Хех, судя по вашему листингу, вы записываете в файл 2 введенные с клавиатуры значения переменных s и n, причем совсем без изменения числовых данных
Навскидку, ряд грубейших ошибок:
Вы не определили массив, в который будете считывать данные из файла, хотя тип для него прописали.
Цитата:
Сообщение от gazon
fl=file of city;
|
пишется в разделе переменных, а не до него
Цитата:
Сообщение от gazon
type city=record
name:string;
chis:real;
end;
|
Вы пишете, что численность населения всегда целое число, а определяете переменную для нее вещественной, хотя на рассчеты это не повлияет, скорее уж на форму вывода числа.
Цитата:
Сообщение от gazon
s:string;
n:real;
|
Совершенно непонятно, чем вы руководствовались, определяя эти переменные для хранения считанных из файла данных, вы же уже определили свой тип, так создайте массив вашего типа и считывайте данные непосредственно в него.
Цитата:
Сообщение от gazon
reset(f);
while not eof(f) do
begin
read(s,n);
end;
|
Исходя из вышесказанного, использование переменных s и n бессмысленно, тем более так, как вы прописали, то есть в данном цикле вы просто запрашиваете ввод с клавиатуры, так как в команде read(s,n) вы не ссылаетесь на файловую переменную как на источник, следовательно, программа будет считывать данные из стандартного потока ввода, то есть с клавиатуры. Правильнее будет так read(f,s,n), хотя лучше все же использовать массив типа city.
Цитата:
Сообщение от gazon
assign(f2,'d:\lab\4\file2.txt');
rewrite(f2);
write(f2,s,n);
|
Это явно нужно поместить в другое место, а то вы открываете результирующий файл по перезаписи и вносите в него последние значения переменных s и n, даже не увеличивая числовое значение.
Предлагаю строки
Цитата:
Сообщение от gazon
assign(f2,'d:\lab\4\file2.txt');
rewrite(f2);
|
поместить до цикла, а
Цитата:
Сообщение от gazon
write(f2,s,n*1.05);
|
в цикл, чтобы данные сразу после чтения передавались во второй файл. Естественно, опять повторюсь, что считывать данные из файла лучше в массив, причем наилучшим вариантом будет динамический массив, то есть с изменяемой размерностью.