• PascalABC.net, обязательно через массивы, помогите пожалуйста.

    Напишите программу, которая в последовательности натуральных чисел определяет сумму всех чисел, кратных 6 и оканчивающихся на 6. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 – признак окончания ввода, не входит в последовательность). Количество чисел не превышает 100. Введённые числа не превышают 300. Программа должна вывести одно число: сумму всех чисел, кратных 6 и оканчивающихся на 6.

    question img

Ответы 2

  • const n=100;

    var i,sum:integer;

       a:array[1..n] of integer;

    begin

     for i:=1 to n do begin

       readln(a[i]);

       if(a[i] = 0) then

         break;

     end;

     for i:=1 to n do begin

       if(a[i] <> 0) then begin

         if(a[i] mod 6 = 0) and (a[i] mod 10 = 6) then

           sum:=sum + a[i];

       end;

     end;

     writeln(sum);

    end.

  • как вариант с динамическим массивом и вычислением за один проход...

    var

       d : array of integer := new integer[0];

       a, s : integer;

    begin

       repeat

           read(a);

           if (a <= 300) and (a > 0) then begin

               setLength(d, d.Length+1);

               d[d.Length-1] := a;

               if (a mod 10 = 6) and (a mod 6 = 0) then s += a;

           end;

       until (a = 0) or (d.Length = 100);

       writeln(s);

    end.

    • Автор:

      chloefs8s
    • 5 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years