Помогите , пожалуйста , с информатикой !! Нужно по этой схеме составить программу (тема...

0 голосов
34 просмотров

Помогите , пожалуйста , с информатикой !! Нужно по этой схеме составить программу (тема Паскаль) Заранее БОЛЬШОЕ СПАСИБО)


image

Информатика (18 баллов) | 34 просмотров
0

Лучше бы вы написали буквами что требуется в задаче. Блок-схема не нужна.

0

Я бы с радостью , но не могу иначе . Нам задали придумать свою блок-схему и написать по ней программу в Pascal . А беда в том , что с программой у меня прблемы

0

Зачем же придумывать такого "крокодила", но мне кажется это не вы придумали, вы где-то это из интернетов взяли. Сначала придумывается задача, что вы хотите получить, а блок-схема это потом, если она вообще кому-то нужна.

0

В первую же очередь создаётся блок-схема программы, описывая общие и узкие профили её работы. Затем, по этой схеме пишется программа. Если ВЫ лично так не делаете, то это не значит, что так не делают остальные 99.9% программистов.

0

Блок схема чего создается, какого алгоритма, какой задачи? Да, для решения школьных задач я не использую блок схемы, совсем.

0

Вы хотите сказать, что можно удержать всю задачу, описанную на фотографии в голове и написать по этим знаниям в голове код? Глупость, да ещё и какая. Поэтому и создаётся вначале блок-схема, а потом уже и код. Да, для большинства школьных задач такое не нужно. Но, повторюсь, не надо закладывать в умы подростков такое мнение, которое сформировано лишь у Вас, основанное на личном опыте.

0

Ну, я считаю, что в школе блок-схемы это зло. Ненужный хлам на чердаке. Кому будет нужно, тот в институте научится.

Дан 1 ответ
0 голосов

Ты налажал в схеме:

  • в условии пунктов 1 и 2 (пофиксил);
  • в пункте 3, там нет никакого оператора присваивания (пофиксил).

Листинг:

program main;

var k, x, w: integer;

begin

   writeln('Введите "k", "x", "w"');

   readln(k, x, w);

   if (k > 2) or ((x <= 9) and (w >6)) then

     if k + x - w > 10 then begin

       k := (k-x) * 4;

       x := w * k;

       if (k >= 6) and (x > 2) then

         if (k < x) and (x > w) then begin

         x := 4;

         writeln(x - k);

         end

         else begin

           x := w;

           writeln(K + w);

         end

       else begin

         k := (k + x) * 3;

         writeln(k + x)

       end;

     end

     else begin

       w := w * x;

       x := (k + x) * 2;

       if (w > 3) and (x < 20) then begin

         w := w * 2;

         writeln(x + w);

       end

       else begin

         x := sqr(x);

         writeln(x - w);

       end;

     end

   else begin

       k := x +w;

       w := sqr(w);

       if x >= 6 then begin

         x := x * 5;

         writeln(x + k - w);

       end

       else begin

           if k > 10 then

               k := (x + k) * 3

           else

               w := k * x;

       writeln((k + w) * x);

       end;

   end;

end.

(154 баллов)
0

Спасибо большое) Очень сильно помог