1.Построить файл данных, компонентами которого являются натуральные числа. Подсчитать сумму тех компонент, которые делятся на 5 и не делятся на 10. 2.Построить типизированный файл данных, который состоит из записей с такими пол...

1.Построить файл данных, компонентами которого являются натуральные числа. Подсчитать сумму тех компонент, которые делятся на 5 и не делятся на 10. 2.Построить типизированный файл данных, который состоит из записей с такими полями: название продукта, количество углеводов, количество белков, количество жиров. Вывести названия тех продуктов, которые соответствуют следующим условиям: белки меньше 20, жиры больше 10, углеводы больше 30.
Гость
Ответ(ы) на вопрос:
Гость
Program KDSUP_1; uses crt; Var   f: File of Integer;   i,n,x,sum : Integer; begin   write('Введите количество чисел: ');   readln(n);   assign(f,'1.dat');   rewrite(f);   for i:=1 to n do     write(f,Random(100)+1);   reset(f);   writeln('Исходный файл:');   while not Eof(f) do     begin       read(f,x);       write(x,' ');     end;   writeln;   sum:=0;   For i:=0 to FileSize(f)-1 do     begin       Seek(f,i);       Read(f,x);       if (x mod 5=0) and (x mod 10<>0) then         begin           sum:=sum+x;         end;       end;   Close(f);   writeln('Сумма: ',sum); end. Program KDSUP_2; uses crt; Type    Eda=Record        prod:string;        ugl,bel,fat:real;      end;    ps=File of eda; Var f:ps;     i,n,m:Integer;     z:eda; Begin   assign(f,'1.dat');   rewrite(f);   writeln('Ввести количество продуктов');   readln(n);   randomize;   for i:=1 to n do     begin       z.prod:='Product_'+IntToStr(i);       z.ugl:=random(100);       z.bel:=random(100);       z.fat:=random(100);       write(f,z);     end;   Close(f);   writeln('***************************************');   writeln('*              М Е Н Ю                *');   writeln('*     продукты с содержанием          *');   writeln('*        белки: меньше 20             *');   writeln('*         жиры: больше 10             *');   writeln('*     углеводы: больше 30             *');   writeln('***************************************');   assign(f,'1.dat');   reset(f);   while not(eof(f)) do     begin       read(f,z);         if (z.ugl>30) and (z.bel<20) and (z.fat>10) then          writeln('     ',z.prod);     end;   close(f); end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы