Добавил:
Silebox
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:
program lab7;
uses sysutils;
const
cols = 5;
need_col = 5;
type
arr_str = array[1..cols] of string;
var
f: TextFile;
fname: string;
x: string;
Code: integer;
temp_v: longint;
temp_arr: arr_str;
temp_cost_str: string;
all_sum: longint = 0;
function replaceStr(s,r,j:string):string;
var temp_pos: integer;
begin
temp_pos := pos(r,s);
delete(s,temp_pos,length(r));
insert(j,s,temp_pos);
replaceStr := s;
end;
function deleteSpaces(s:string):string;
var i: integer;
begin
for i:=1 to Length(s) do
begin
if (s[i] = ' ') then s := replaceStr(s,' ','');
end;
deleteSpaces := s;
end;
function makeArrFromStr(s:string):arr_str;
var
i: integer;
ni: integer = 1;
temp_s: string = '';
result: arr_str;
begin
for i:=1 to Length(s) do
begin
if ((s[i] = '|') or (i = Length(s))) then
begin
if (i = Length(s)) then temp_s := temp_s + s[Length(s)];
result[ni] := temp_s;
ni := ni + 1;
temp_s := '';
end
else temp_s := temp_s + s[i];
end;
makeArrFromStr := result;
end;
begin
Write('Введите название файла: '); ReadLn(fname);
if (not FileExists(fname)) then
begin
WriteLn('Такого файла не существует.');
exit;
end;
assign(f,fname);
reset(f);
ReadLn(f,x);
while (not eof(f)) do
begin
ReadLn(f,x);
temp_arr := makeArrFromStr(x);
temp_cost_str := replaceStr(temp_arr[need_col],'рублей','');
temp_cost_str := deleteSpaces(temp_cost_str);
val(temp_cost_str,temp_v,Code);
if (Code <> 0) then WriteLn(Code);
all_sum := all_sum + temp_v;
end;
WriteLn('суммарные затраты на приобретение: ', all_sum, ' рублей');
close(f);
end.
uses sysutils;
const
cols = 5;
need_col = 5;
type
arr_str = array[1..cols] of string;
var
f: TextFile;
fname: string;
x: string;
Code: integer;
temp_v: longint;
temp_arr: arr_str;
temp_cost_str: string;
all_sum: longint = 0;
function replaceStr(s,r,j:string):string;
var temp_pos: integer;
begin
temp_pos := pos(r,s);
delete(s,temp_pos,length(r));
insert(j,s,temp_pos);
replaceStr := s;
end;
function deleteSpaces(s:string):string;
var i: integer;
begin
for i:=1 to Length(s) do
begin
if (s[i] = ' ') then s := replaceStr(s,' ','');
end;
deleteSpaces := s;
end;
function makeArrFromStr(s:string):arr_str;
var
i: integer;
ni: integer = 1;
temp_s: string = '';
result: arr_str;
begin
for i:=1 to Length(s) do
begin
if ((s[i] = '|') or (i = Length(s))) then
begin
if (i = Length(s)) then temp_s := temp_s + s[Length(s)];
result[ni] := temp_s;
ni := ni + 1;
temp_s := '';
end
else temp_s := temp_s + s[i];
end;
makeArrFromStr := result;
end;
begin
Write('Введите название файла: '); ReadLn(fname);
if (not FileExists(fname)) then
begin
WriteLn('Такого файла не существует.');
exit;
end;
assign(f,fname);
reset(f);
ReadLn(f,x);
while (not eof(f)) do
begin
ReadLn(f,x);
temp_arr := makeArrFromStr(x);
temp_cost_str := replaceStr(temp_arr[need_col],'рублей','');
temp_cost_str := deleteSpaces(temp_cost_str);
val(temp_cost_str,temp_v,Code);
if (Code <> 0) then WriteLn(Code);
all_sum := all_sum + temp_v;
end;
WriteLn('суммарные затраты на приобретение: ', all_sum, ' рублей');
close(f);
end.