алиса673
22.04.2023 10:10

Даны положительные числа А и В (А>В). На отрезке длины А размещено максимально возможное количество отрезков длины В (без наложений). Не используя операции умножения и деления, найти длину незанятой части отрезка А.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
ангилино
25.02.2020 01:01

ответ:

uses graphabc;

var xx,yy,u: integer;

procedure growl(x,y,r: integer);

var i: byte;

begin

for i: =1 to r do

    begin

    circle(x,y,i);

    sleep(5);

    end;

end;

procedure growr(x,y: integer);

var i: byte;

begin

for i: =1 to 20 do

    begin

    ellipse(x-5,y-(i),x-(i*3),y+(i));

    ellipse(x+5,y-(i),x+(i*3),y+(i));

    ellipse(x-(i),y-5,x+(i),y-(i*3));

    ellipse(x-(i),y+5,x+(i),y+(i*3));

    sleep(3);

    end;

end;

procedure fall;

var r,prer,i: byte;

    x,y: integer;

begin

for i: =1 to 10 do

    begin

x: =random(160)-80+windowwidth div 2;

prer: =0;

r: =random(10)+10;

for y: =80+windowheight div 2 to windowheight+30 do

    begin

    setpencolor(clwhite);

    circle(x,y-1,prer);

    setpencolor(clblack);

    circle(x,y,r);

    prer: =r;

    sleep(3);

    end;

    end;

end;

procedure growd (x,y: integer);

var i: byte;

begin

for i: =20 downto 5 do

    begin

    clearwindow;

    setbrushcolor(clgreen);

    ellipse(x-5,y-(20),x-(60),y+(20));

    ellipse(x+5,y-(20),x+(60),y+(20));

    ellipse(x-(20),y-5,x+(20),y-(60));

    ellipse(x-(20),y+5,x+(20),y+(60));

    setbrushcolor(rgb(255,255-((20-i)*10),255-((20-i)*;

    circle(x-i,y-i,i);

    circle(x+i,y-i,i);

    circle(x+i,y+i,i);

    circle(x-i,y+i,i);

    sleep(5);

    end;

end;

var j: integer;

begin

repeat

setbrushcolor(clgreen);

growr(windowwidth div 2,windowheight div 2);

setbrushcolor(clwhite);

for j: =1 to 360 do

    if j mod 10=0 then

    begin

        xx: =round(windowwidth div 2+20*cos(pi*(u+(j*10))/180));

        yy: =round(windowheight div 2+20*sin(pi*(u+(j*10))/180));

    growl(xx,-j) div 10));

    end;

sleep(100);

fall;

growd (windowwidth div 2,windowheight div 2);

sleep(100);

until false;

end.

объяснение:

0,0(0 оценок)
Ответ:
nisa89
07.02.2021 01:49

Если правильно поняла суть вашей программы, то нужно вводить количество элементов массива с клавиатуры (массив заполняется рэндомно от -10 до 10) и вывести элементы больше 0 . Вас в цикле for зачем-то понесло на второе условие if(a[r+1]<0) это неверно, цикл сам переберет все значения. Примерный код:

static void znaki(int[] a)

       {

           //Массив до изменений этот код можно удалить

           //Выводит весь массив со всеми значениями

           for (int i = 0; i < a.Length; i++)

           {

              Console.Write(a[i]+" ");

           }

           Console.WriteLine();

           //  

           for (int r = 0; r < a.Length-1; r++)

           {

               if (a[r] >= 0)

               {

                   if (a[r + 1] <= 0)

                   {

                       Console.WriteLine("Пара: "+a[r]+" " +a[r+1]);

                   }

               }

               if (a[r] <= 0)

               {

                   if (a[r + 1] >= 0)

                   {

                       Console.WriteLine("Пара: " + a[r] +" " + a[r + 1]);

                   }

               }

           }

       }

       static void Main(string[] args)

       {

           Console.WriteLine("введите количество элементов в массиве:");

           int n = Convert.ToInt32(Console.ReadLine());

           int[] a = new int[n];

           Random rand = new Random();

           for (int i = 0; i < a.Length; i++)

           {

               a[i] = rand.Next(-10,10);

           }

           znaki(a);

           Console.ReadLine();

       }


Исправить ошибку в c#: индекс находится вне границы массива static void znaki(int[]a) { for(int r=0;
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота