Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/50: Рейтинг темы: голосов - 50, средняя оценка - 4.52
0 / 0 / 0
Регистрация: 20.12.2009
Сообщений: 14

В типизированном файле поменять местами минимальный и максимальный элементы.

22.02.2010, 19:48. Показов 9732. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан файл вещественных чисел. Поменять в нем местами минимальный и максимальный элементы.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.02.2010, 19:48
Ответы с готовыми решениями:

В матрице найти минимальный и максимальный элементы и их координаты, поменять местами минимальный и максимальный элементы
В матрице размером n на m (1<n, m<10) (ввод n, m и матрицы с клавиатуры) найти минимальный и максимальный элементы и их координаты,...

Найти минимальный и максимальный элементы и их координаты, поменять местами минимальный и максимальный элемент
3) В матрице размером n на m (1<n, m<10) (ввод n, m и матрицы с клавиатуры) найти минимальный и максимальный элементы и их координаты,...

Определить максимальный и минимальный элементы в файле и поменять их местами
Создать текстовый файл, в который построчно записать прямоугольный массив massivnm, заполненный целыми случайными числами в диапазоне от...

8
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
22.02.2010, 20:22
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
uses crt;
var f:file of real;
    a,b,max,min,x:real;
    i,imn,imx:integer;
begin
clrscr;
assign(f,'fileF');
rewrite(f);
writeln('Введите в файл действительные числа, окончание ввода 0:');
repeat
write('a=');
readln(a);
write(f,a);
until a=0;
clrscr;
writeln('Содержание исходного файла:');
reset(f);
while not eof(f) do
 begin
  read(f,a);
  write(a:0:2,' ');
 end;
writeln;
close(f);
reset(f);
read(f,min);
max:=min;
imn:=0;
imx:=0;
for i:=0 to filesize(f)-1 do
 begin
  seek(f,i);
  read(f,a);
  if a>max then
   begin
    max:=a;
    imx:=i;
   end;
  if a<min then
   begin
    min:=a;
    imn:=i;
   end;
 end;
close(f);
writeln;
writeln('Минимальный =',min:0:2,' его индекс=',imn);
writeln('Максимальный=',max:0:2,' его индекс=',imx);
writeln;
reset(f);
seek(f,imn);
read(f,a);
seek(f,imx);
read(f,b);
seek(f,imn);
write(f,b);
seek(f,imx);
write(f,a);
close(f);
writeln('Содержание файла после обмена макс и мин элементов:');
reset(f);
while not eof(f) do
 begin
  read(f,a);
  write(a:0:2,' ');
 end;
close(f);
readln
end.
0
 Аватар для voice8787
19 / 19 / 12
Регистрация: 21.08.2010
Сообщений: 136
09.09.2010, 15:19
Пишу аналогичную программу, не подскажете почему не принимается запись:
Pascal
1
min:=a[0];
если записать
Pascal
1
i:=0; min:=a[i];
, то уже работает

вот сама программа:
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
program maxmin;
uses crt;
var
q:file of real;
min,max:real;
a:array[1..100] of real;
i,nommax,nommin:integer;
begin
clrscr;
assign(q,'D:\pas\files\Q.DAT');
reset(q);
for i:=0 to filesize(q)-1 do
begin
read(q,a[i]);
writeln(a[i]);
end;
 
min:=a[0];
max:=a[0];
nommin:=0;
nommax:=0;
 
 
for i:=1 to filesize(q)-1 do
begin
 
if a[i]<min then
begin
min:=a[i];
nommin:=i;
end;
 
if a[i]>max then
begin
max:=a[i];
nommax:=i;
end;
end;
writeln('min=',min);
writeln('max=',max);
 
writeln('nommin=',nommin);
writeln('nommax=',nommax);
 
seek(q,nommax);
write(q,min);
seek(q,nommin);
write(q,max);
close(q);
 
reset(q);
for i:=0 to filesize(q)-1 do
begin
read(q,a[i]);
writeln(a[i]);
end;
close(q);
 
readln
end.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.09.2010, 15:27
Так ты бы хоть файл скинул, а то у меня например нет файла
D:\pas\files\Q.DAT
0
 Аватар для voice8787
19 / 19 / 12
Регистрация: 21.08.2010
Сообщений: 136
09.09.2010, 15:31
Вот файл
Вложения
Тип файла: rar Q.rar (87 байт, 56 просмотров)
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.09.2010, 15:33
А ошибка такая
Цитата Сообщение от voice8787 Посмотреть сообщение
a:array[1..100] of real;
или нужно
Pascal
1
a:array[0..100] of real;
или когда читаешь
Pascal
1
2
3
for i:=0 to filesize(q)-1 do
begin
read(q,a[i+1]);
и тогда min:=a[1];
А вообще зачем массив? Нужно либо массив использовать, либо файл, типизированный файл сам как массив, тоже индексы.
Минимум ищут так.
Pascal
1
2
3
4
5
6
7
8
reset(f);
read(f, min)
while not eof(f) do
 begin
  read(f,a);//здесь а просто var a:integer;
  if a<min then min:=a;
 end;
close(f);
1
 Аватар для voice8787
19 / 19 / 12
Регистрация: 21.08.2010
Сообщений: 136
09.09.2010, 15:38
аа, точно))

спасибо!!!
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
09.09.2010, 15:42
Я бы написал так.
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
38
39
40
41
42
43
44
45
46
47
48
49
program maxmin;
uses crt;
var q:file of real;
    min,max,a:real;
    i,nommax,nommin:integer;
begin
clrscr;
assign(q,'Q.DAT');//у меня файл в папке с программой
reset(q);
writeln('Исходный файл:');
read(q,min);
write(min:0:2,' ');
max:=min;
nommin:=0;
nommax:=0;
for i:=1 to filesize(q)-1 do
 begin
  read(q,a);
  write(a:0:2,' ');
  if a<min then
   begin
    min:=a;
    nommin:=i;
   end
  else if a>max then
   begin
    max:=a;
    nommax:=i;
   end;
 end;
writeln;
writeln('min=',min:0:2);
writeln('max=',max:0:2);
writeln('nommin=',nommin);
writeln('nommax=',nommax);
seek(q,nommax);
write(q,min);
seek(q,nommin);
write(q,max);
close(q);
reset(q);
for i:=0 to filesize(q)-1 do
 begin
  read(q,a);
  write(a:0:2,' ');
 end;
close(q);
readln
end.
1
 Аватар для voice8787
19 / 19 / 12
Регистрация: 21.08.2010
Сообщений: 136
09.09.2010, 15:49
действительно, можно и без массива спокойно обойтись.
спасибо, Puporev!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.09.2010, 15:49
Помогаю со студенческими работами здесь

Определить максимальный и минимальный элементы в файле и поменять их местами
Создать текстовый файл, в который построчно записать прямоугольный массив massivnm, заполненный целыми случайными числами в диапазоне от...

В типизированном файле целых чисел поменять местами наибольший и наименьший элементы.
В типизированном файле целых чисел поменять местами наибольший и наименьший элементы.

Поменять в файле местами минимальный и максимальный элементы
КТО СМОЖЕТ ПОМОГИТЕ:1)File26. Дан файл вещественных чисел. Поменять в нем местами минимальный и максимальный элементы. 2)Составить...

Текстовый файл: Определить максимальный и минимальный элементы в файле и поменять их местами
Создать текстовый файл, в который построчно записать прямоугольный массив massivnm, заполненный целыми случайными числами в диапазоне от ...

В текстовом файле определить второй максимальный и второй минимальный элементы, и поменять их местами
Создать текстовый файл, в который построчно записать прямоугольный массив massivnm, заполненный целыми случайными числами в диапазоне от...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru