Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 18.04.2015
Сообщений: 17
1

Работа с файлами

14.02.2018, 09:48. Просмотров 830. Ответов 6
Метки нет (Все метки)


Задание-найти в массиве минимальный элемент и записать его в первую строку файла, во вторую строку записать сам массив
Записывает 0 в первую строку. В чем моя ошибка?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Program 62;
 
const
n=10;
 
var
f:text;
 
a:array [1..n] of integer;
i,min:integer;
 
begin
assign(f,'in.txt');
reset(f);
 
while not EOF(f) do
begin
i:=i+1;
read(f,a[i]);
end;
close(f);
 
min:=a[1];
for i:=1 to n do
if a[i]<min then
min:=a[i];
 
assign(f,'out1.txt');
rewrite(f);
writeln(f,min);
 
for i:=1 to n do
write(f,a[i]:3);
close(f);
readln;
 
end.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.02.2018, 09:48
Ответы с готовыми решениями:

Работа с файлами , хотелось бы с windows system файлами
всем привет, нужна интересная идея по программированию, работа с файлами , хотелось бы с windows...

Работа с файлами(Запись,чтение,работа с данными)
Здравствуйте, никак не могу осилить файлы... Для начала вот само задание: В справочной автовокзала...

Лабораторная работа №5. Работа с файлами и алгоритмы сортировки
1. Написать функцию Load для считывания из текстового файла (например, Workers.txt) информации о...

Работа с файлами, чтение/работа со строкой
Доброго времени суток. Начал работать с C++ Builder 6. Есть текстовый файл .txt с различными...

6
4252 / 2038 / 2092
Регистрация: 10.12.2014
Сообщений: 7,837
14.02.2018, 10:13 2
Хорошо, что вообще работает!
А то бы мог и не работать…

У вас в строке 24
Pascal
24
for i:=1 to n do
чему равно n?
От куда в нём значение взялось?
0
0 / 0 / 0
Регистрация: 18.04.2015
Сообщений: 17
14.02.2018, 10:20  [ТС] 3
А что там должно быть7
0
4252 / 2038 / 2092
Регистрация: 10.12.2014
Сообщений: 7,837
14.02.2018, 10:44 4
Размер реально считанного из файла массива, вестимо!
0
Модератор
62864 / 46909 / 32329
Регистрация: 18.05.2008
Сообщений: 113,680
14.02.2018, 10:53 5
Цитата Сообщение от ivan199 Посмотреть сообщение
аписывает 0 в первую строку.
Вероятно в исходном файле или минимальное число=0, или читает пробел за последним числом и воспринимает это как 0.
Нужно посмотреть Ваш исходный файл.
Нужно писать не так.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
uses crt;
var f:text;
    a:array [1..100] of integer;
    n,i,min:integer;
begin
assign(f,'in.txt');
reset(f);
n:=0; {количество чисел в файле любое, не больше 100}
while not seekeof(f) do{чтобы не читало пробелы за последним числом}
 begin
  n:=n+1;
  read(f,a[n]);
 end;
close(f);
min:=a[1];
for i:=2 to n do
if a[i]<min then
min:=a[i];
assign(f,'out1.txt');
rewrite(f);
writeln(f,min);
for i:=1 to n do
write(f,a[i]:3);
close(f);
readln;
end.
0
4252 / 2038 / 2092
Регистрация: 10.12.2014
Сообщений: 7,837
14.02.2018, 11:01 6
Лучший ответ Сообщение было отмечено ZX Spectrum-128 как решение

Решение

Цитата Сообщение от Puporev Посмотреть сообщение
Вероятно в исходном файле или минимальное число=0, или читает пробел за последним числом и воспринимает это как 0.
Всё гораздо проще:
В его файле количество чисел меньше 10, а работа идёт со всем массивом!

Достаточно было всего лишь добавить переменную, которая бы отвечала за количество считанных значений в массив:
Pascal
10
11
12
13
14
15
16
17
18
19
20
21
k,i,min:integer;
 
begin
  assign(f,'in.txt');
  reset(f);
  k := 0; 
  while not EOF(f) do
  begin
    read(f,a[i]);
    inc(k);
  end;
  close(f);
… и в дальнейших циклах использовать уже не константу n, а переменную k.
0
0 / 0 / 0
Регистрация: 18.04.2015
Сообщений: 17
14.02.2018, 13:54  [ТС] 7
Спасибо большое, все получилось.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.02.2018, 13:54

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Работа с h файлами
Такая проблема Создаю Header File (File-&gt;New-&gt;File-&gt;(Visual C++)-&gt;Header File в нем объявляю...

Работа с файлами
помогите решить плиз!!!!!! зарание всем огромное спс!!! Задача 1. Дан файл целых чисел....

Работа с файлами
Задача из сборника Златопольского: 14.28. Имеется типизированный файл, элементами которого...

Работа с файлами
Здравствуйте! Помогите пожалуйста доделать программу... Условие: Вот что имеется: unit...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.