edubenskaya
?>

Найти средне арифметическое элементов последовательности, превосходящих некоторое число с. массив задан датчиком случайных чисел на интервале [-44, 35]. размер произвольный. значение с вводится с экрана.

Информатика

Ответы

samirmajbubi

var

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

i,c,k: integer;

sr: real;

begin

randomize;

for i: =1 to 20 do begin

a[i]: =random(80)-44;

write (a[i],' ');

end;

writeln;

write ('c = '); readln(c);

for i: =1 to 20 do

if a[i]> c then begin

sr: =sr+a[i];

k: =k+1;

end;

sr: =sr/k;

writeln (sr: 0: 2);

readln;

end.

Shitikov-M.A.1307
Считаем, что поля записи в текстовом файле разделены символом "; ", тогда можно решить так:

type

  person = record

    fname: string; //фамилия ученика

    lname: string; //имя

    school: integer; //номер щколы

  end;

 

var student: person;

n,s,p: integer;

tmp: string;

fin: text; //файловая переменная

begin

  assign(fin, 'students.txt');

  reset(fin);

  readln(n); //получаем номер школы

  while not (eof(fin)) do 

  begin

    readln(fin, tmp); //читаем строку из файла

    p: = pos('; ', tmp);  

    delete(tmp, 1, p); //удаляем все до первого разделителя

    p: = pos('; ', tmp);  

    delete(tmp, 1, p); //удаляем все до второго разделителя

    // в tmp остался номер школы

    student.school: =strtoint(tmp);

    if student.school=n then s+=1;  

  end;

  writeln(s);

end.

bogdanyukn562
Список учеников в файле data.txt(см. вложение) //pascal type   tpupils = record       firstname, surname: string;       schoolnumber: integer;   end; var   f: text;   s, buf: string;   i, j, tmp: byte;   num, countpupils: integer;   a: array [1..200] of tpupils; begin   assign(f, 'data.txt');   reset(f);   j : = 1;   while not eof(f) do   begin       readln(f, buf);       buf : = buf + ' ';       tmp : = 1;       for i : = 1 to length(buf) do       begin           if pos(buf[i], ' ') = 0 then s : = s + buf[i]           else           begin               if length(s) > 0 then               begin               case tmp of                   1: begin  a[j].firstname : = s; inc(tmp); end;                   2: begin a[j].surname : = s; inc(tmp); end;                   3:                   begin                       val(s, num, num);                       a[j].schoolnumber : = num;                   end;               end;               //writeln(s);               s : = '';               end;           end;       end;       inc(j);   end;   close(f);   write('введите № школы: ');   readln(num);   for i : = 1 to 200 do   begin       if a[i].schoolnumber = num then           //writeln(a[i].firstname, ' ', a[i].surname, ' ',           //              a[i].schoolnumber);           inc(countpupils);   end;   writeln('количество учеников в данной школе = ',                   countpupils); end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Найти средне арифметическое элементов последовательности, превосходящих некоторое число с. массив задан датчиком случайных чисел на интервале [-44, 35]. размер произвольный. значение с вводится с экрана.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

andrewa
Vyacheslavovna1108
druzhbamagazin2457
sayfullinmr
НосовЖелиховская
Narine natalya
orinvarostov
kolyabelousow4059
tiv67
Голосова-Лобанов1555
punchf
Артур1807
yulyatmb
Юлия1972
Radikovnanikolaeva