М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
яя82
яя82
23.07.2020 23:54 •  Информатика

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

👇
Ответ:
Eeerok33
Eeerok33
23.07.2020

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.

4,7(83 оценок)
Ответ:
рогозина
рогозина
23.07.2020

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

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.

4,7(44 оценок)
Открыть все ответы
Ответ:
vikapuhtina
vikapuhtina
23.07.2020

1. введите N.

2. цикл for от 1 до N будем вводить 'элементы массива x[i]/

3. в цыкле от 1 до N бедем выводить на экран массив writeln(x[i]) и считаем сумму. если в программе выполнять, то это будет выглядеть так

write('введите N'); readln(n);

for i:=1 to n do begin write('введите ',i,' элемент массива');

                                readln (x[i]);

                       end;

sum:=0;

for i:=1 t0 n do begin

                           write(' ',x[i]);

                           sum:=sum+x[i];

                       end;

write('а сумма всех элементов = ',sum);

4,7(7 оценок)
Ответ:
89539123898
89539123898
23.07.2020
Во-первых, не whill, а while.
 Во-вторых, цикл с предусловием(while) выполняется только тогда, когда его условие возвращает ложь. Если условие возвращает правду, цикл завершается. Бывает так, что при попытке первой итерации цикла условие уже возвращает правду. В этом случае цикл не будет выполнен ни разу.
 Цикл с предусловием(repeat), наоборот, выполняется, пока условие возвращает правду и завершается ложью. Стоит заметить, что если цикл с предусловием проверяет своё условие перед итерацией, цикл с постусловием делает это после, а это значит, что последний выполнится хотя бы один раз.
4,4(40 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ