profile
Размещено 5 лет назад по предмету Информатика от mrGrizly

Написать программу на языке Pascal По каналу связи передается последовательность положительных целых чисел, все числа не превышают 1000, их количество заранее неизвестно. Каждое число передается отдельно. Признаком конца передаваемой последовательности является число 0. После числа 0 передается контрольное значение – наибольшее число, которое можно получить умножением двух различных элементов последовательности. Напишите эффективную программу, которая получает последовательность чисел и следующие за ней признак конца и контрольное значение, а также проверяет правильность контрольного значения. Программа должна напечатать отчет следующего вида:
Получено .. чисел
Полученное контрольное значение: ….
Вычисленное контрольное значение:…
Контроль пройден (или – контроль не пройден)

  1. Ответ на вопрос
    Ответ на вопрос дан HappyCoder

    var

     n, max, count, contrl, max2: integer;

    begin

     contrl := 0;

     max := 0;

     Writeln('Введите числа: ');

     Readln(n);

     while n <> 0 do

     begin

       Inc(count);

       if n>max then begin max2:=max; max:=n end

       else if n > max2 then max2 := n;

       Read(n);

     end;

     max2*=max;

     Writeln('Введите контрольное значение: ');

     Read(contrl);

     Writeln('Получено: ', count, ' чисел');

     Writeln('Получено контрольное значение: ', contrl);

     Writeln('Вычисленное контрольное значение:: ', max2);

     if contrl = max then Writeln('Контроль пройден')

     else Writeln('Контроль не пройден');

    end.

    1. Ответ на вопрос
      Ответ на вопрос дан HappyCoder
      Исправил..
  2. Ответ на вопрос
    Ответ на вопрос дан BobbyFresnel

    ===== PascalABC.NET =====

    begin

     var (n1, n2) := ReadInteger2;

     if n2 > n1 then

       Swap(n1, n2);

     var k := 2;

     foreach var n in ReadSeqIntegerWhile(p -> p <> 0) do

     begin

       if n > n2 then

         n2 := n;

       if n2 > n1 then

         Swap(n1, n2);

       Inc(k)

     end;

     var ks := ReadInteger;

     Println('Получено', k, 'чисел');

     Println('Полученное контрольное значение:', ks);

     n1 *= n2;

     Println('Вычисленное контрольное значение:', n1);

     Print('Контроль', ks = n1 ? 'пройден' : 'не пройден')

    end.

Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 6 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.