Паскаль 1. дано натуральное число n и n целых чисел, задаваемых пользователем. определить, сколько среди этих n чисел двузначных. массивы не использовать. 2. дано натуральное число n и n целых трехзначных чисел, задаваемых пользователем. определить, сколько среди этих n чисел таких, что произведение их цифр равно к. массивы не использовать

ldudin ldudin    1   06.09.2019 08:10    2

Ответы
alinkachehovska alinkachehovska  06.10.2020 20:55
// PascalABC.NET 3.3, сборка 1540 от 16.09.2017
// Внимание! Если программа не работает, обновите версию!

begin
  Writeln(ReadSeqInteger('Вводите числа:',ReadInteger('N='))
      .Where(x->Abs(x).Between(10,99)).Count)
end.

Пример
N= 5
Вводите числа: 23 -4 100 -42 16
3

begin
  var k:=ReadInteger('K=');
  Writeln(ReadSeqInteger('Вводите трехзначные числа:',ReadInteger('N='))
      .Where(m->Abs((m mod 10)*(m div 100)*(m div 10 mod 10))=k).Count)
end.

Пример
K= 8
N= 10
Вводите трехзначные числа: 142 712 426 -222 318 916 107 932 -116 473
2
ПОКАЗАТЬ ОТВЕТЫ
stas7365w98 stas7365w98  06.10.2020 20:55
Var N,sum:integer;
begin
sum:=0;
write('Введите N:');
readln(N);
for var i:= 1 to N do
begin
readln(N);
if (abs(N)>9) and (abs(N)<=99) then
sum:=sum+1;
end;
writeln('Количество двузначных чисел:',sum);
end. 

var N,K,sum:integer;
begin
sum:=0;
write('Введите N:');
readln(N);
write('Введите K:');
readln(K);
for var i:= 1 to N do
begin
readln(N);
if (abs(N)>9) and (abs(N)<=99) then
if (((N div 100)*((N div 10) mod 10)*(N mod 10)) = K) then
sum:=sum+1;
end;
writeln('Количество чисел:',sum);
end. 
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика