Есть ответ 👍

Напишите программу, которая в последовательнсти целых чисел определяет количество нечетных чисел, кратных 3. программа получает на выход целые числа, количество введенных чисел неизвестно, последовательность чисел заканчивается числом 0 (0-признак окончания ввода, не входит в последовательность). количество чисел не превышает 1000. введеные числа по модулю не превышают 30 000. программа должна вывести два числа: длину последовательности (завершающий 0 не учитывается) и количество нечетных чисел, кратных 3. )

212
414
Посмотреть ответы 3

Ответы на вопрос:

finn10
4,8(54 оценок)

Из условия нам известно, что ввод завершается числом ноль. информация о количестве чисел требуется только если их запоминать в массиве, но у нас однопроходный алгоритм, массив не нужен, поэтому про "1000 чисел" благополучно забываем. числа целые, и по модулю не превышают 30 000, следовательно им надо отводить двухбайтный тип integer, в в котором диапазон представления чисел [-32 768 ; 32 767]."нечетные числа, кратные трем" - это такие, у которых остаток от деления на два ненулевой, а остаток от деления на три нулевой. поскольку числа целые, то и деление, конечно же, целочисленное.длина последовательности n - это просто счетчик количества прохождений цикла за вычетом единицы, потому что последний проход по циклу будет при вводе нуля, а его учитывать не надо. в другом счетчике k мы накапливаем количество чисел, для которых выполнилось рассмотренное выше условие "нечетные числа, кратные трем".var   n,k,m: integer; begin   writeln('вводите целые числа, для окончания введите 0');   n: =0; k: =0;   repeat       read(m); inc(n);       if (m mod 2 < > 0) and (m mod 3 = 0) then inc(k)   until m=0;   writeln('введено чисел- ',n-1);   writeln('нечетных, кратных трем- ',k) end. тестовое решение: вводите целые числа, для окончания введите 0 -5 12 8 27 -18 14 -33 7 0 введено чисел- 8 нечетных, кратных трем- 2
shoxi21
4,8(92 оценок)

Var a: array[1..1000] of integer; i,j: integer; begin repeat i: =i+1; read(a[i]); if (a[i] mod 2< > 0) and (a[i] mod 3=0) then j: =j+1; until (a[i]=0) or (i=1000); writeln('kolichestvo chisel - ',i-1); writeln('kolichestvo nechetnih chisel kotorie delatsa na 3 - ',j); writeln; end.

Pascal 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 var a,b,c,s: real; begin repeat write ('введите длину гипотенузы c='); readln(c); write ('введите длину катета a='); readln(a); write ('введите длину площади s='); readln(s); if (c> b) and (c> 0) and (b> 0) then begin a: =sqrt(sqr(c)-sqr(b)); s: =(1/2)*b*c; write end.

Популярно: Информатика