Найти сумму и произведение всех цифр в каждой строке в текстовом файле — Pascal(Паскаль)

uses crt;
var f:text;
    i,k:byte;
    name,s:string;
    n,sm:integer;
    p:longint;
begin
clrscr;
write('Имя файла для чтения: ');
readln(name);
name:=name+'.txt';
assign(f,name);
{$I-} reset(f);  {$I+}
if IOResult <> 0 then
 begin
  writeLn('Не могу открыть файл ',name);
  writeLn('Работа программы завершена. Нажмите ENTER');
  readln;
  exit;
 end;
n:=0;
while not eof(f) do
 begin
  readln(f,s);
  n:=n+1;
  sm:=0;p:=1;
  for i:=1 to length(s) do
  if s[i] in ['0'..'9'] then
    begin
     k:=ord(s[i])-48;
     sm:=sm+k;
     p:=p*k;
    end;
   writeln('В строке ',n,' сумма цифр=',sm,' произведение=',p);
 end;
close(f);
readln
end.

Leave a Comment

75 − = 67