1)С клавиатуры вводится последовательность целых чисел. Признак окончания ввода – число...

0 голосов
67 просмотров

1)С клавиатуры вводится последовательность целых чисел. Признак окончания ввода
– число 0. Найти среднее арифметическое чисел, больших 12


2)Дано натуральное число. Найти произведение его цифр, не больших 4. с использованием циклов с условиями (while или repeat).


Информатика (16 баллов) | 67 просмотров
Дано ответов: 2
0 голосов

Program Project1;

var m:array of integer; n, i, summ:integer;

begin
  repeat
    write('n: '); readln(n);
    SetLength(m, Length(m)+1);
    m[Length(m)-1]:=n;
  until n=0;
  SetLength(m, Length(m)-1);

  n:=0; summ:=0;
  for i:=0 to Length(m)-1 do begin
    if m[i]>12 then begin
      inc(n);
      inc(summ, m[i]);
    end;
  end;

  Writeln('Result:=', summ/n);

  readln;
end.

2) ---------------------------------------------------------------------------------------

program Project1;

var n, t, res: integer;

begin
  write('N:=');readln(n);
  res:=1;
  while n>0 do begin
    t:=(n mod 10);
    if t<4 then res:=res*t;<br>    n:=n div 10;
  end;

  writeln('Result:=', res);

  readln;
end.

(511 баллов)
0 голосов

Задача №1
//Pascal
var i,a,s,k:integer;
begin
  s:=0;k:=0;
  repeat
   readln(a);
   if  a>12 then begin
    k:=k+1;
    s:=s+a;
   end;
   until a=0;
   if k<>0 then writeln(s/k)
   else writeln('Таких чисел нет');
 end.

Задача №2
var
  n,p: integer;

begin
  p:=1;
  readln(n);
  while n > 0 do
  begin
    write(' ', n mod 10);
    if n mod 10 < 4 then p:=p * (n mod 10);
    n := n div 10
  end;
  if p<>1 then writeln('Произведение цифр числа ', p)
  else writeln('Нет решения');
end.


(13.9k баллов)