Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 24.06.2011
Сообщений: 20
1

составить из типизированного файла линейный массив

26.06.2011, 15:29. Просмотров 849. Ответов 10
Метки нет (Все метки)

помогите пожалуйста. буду очень благодарна.

Дан типизированный файл, содержащий целые числа. Получить из него линейный массив, записав в него все четные элементы файла. Вывести элементы массива на экран.



типизированный файл с числами уже создан.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.06.2011, 15:29
Ответы с готовыми решениями:

Составить процедуру для ввода данных в массив A(n) типа integer. Данные вводятся из типизированного файла типа integer, начиная с k-ой по n-ую
Составить процедуру для ввода данных в массив A(n) типа integer. Данные вводятся из типизированного...

Составить процедуру для формирования типизированного файла...
Помогите, пожалуйста, что то у меня совсем никак =( Программу написать с помощью модуля....

Перезапись из типизированного файла в массив
Запрограммировать следующие процедуры и функции: а) перезапись из типизированного файла в массив, ...

Процедура перезаписи из типизированного файла в массив
Подскажите, пожалуйста, как будет выглядеть процедура перезаписи из типизированного файла в массив?

10
5 / 5 / 1
Регистрация: 15.06.2011
Сообщений: 16
26.06.2011, 16:53 2
а четные - имеется ввиду, что элемент делится на 2 без остатка или просто брать компоненты файла через одну?
1
0 / 0 / 0
Регистрация: 24.06.2011
Сообщений: 20
26.06.2011, 16:55  [ТС] 3
четные компоненты файла.
0
5 / 5 / 1
Регистрация: 15.06.2011
Сообщений: 16
26.06.2011, 17:01 4
выберите нужный цикл. удалите тот, который не нужен, иначе будет не правильно работать
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
program file_mas;
 uses crt;
 var F:file of integer;
     A:array[1..100] of integer;
     i,x,n:integer;
 begin
  clrscr;
  assign(F,'file');   {указать файл, в котором находятся числа}
  rewrite(F);
  n:=0;
  
  while not eof(F) do
   begin
    seek(F,n);
    read(F,x);
    A[i]:=x;              {четные компоненты файла по номеру}
    i:=i+1;
    n:=n+2;
   end;
   
  while not eof(F) do
   begin
    seek(F,n);
    read(F,x);
    If (x mod 2)=0 then
     begin
      A[i]:=x;              {четные компоненты по значению}
      i:=i+1;
     end;
    n:=n+1;
   end;
   
  writeln('Массив');
  For i:=1 to i do
   begin                    {вывод массива}
    write('',A[i]:4);
   end;
  readln;
 end.
1
0 / 0 / 0
Регистрация: 24.06.2011
Сообщений: 20
26.06.2011, 17:14  [ТС] 5
кроме слова "ответ" ничего не выводит.
0
5 / 5 / 1
Регистрация: 15.06.2011
Сообщений: 16
26.06.2011, 17:19 6
прошу прощения. добавьте в конце перед Readln - close(F);
путь к файлу, его имя и расширение верно указаны?
он правильно заполнен?
могу так же сделать создание и заполнение файла
Pascal
1
2
3
4
5
6
7
8
  writeln('Ìàññèâ');
  For i:=1 to i do
   begin                    {âûâîä ìàññèâà}
    write('',A[i]:4);
   end;
  readln;
  close(F);
 end.
0
0 / 0 / 0
Регистрация: 24.06.2011
Сообщений: 20
26.06.2011, 17:21  [ТС] 7
да. заполнено все правильно..

вот смотри. мне нужно не номера выводить элементов. мне нужно вывести значение четных строк в массив. т.е. число 2 строки, 4 строки и т.д.
0
5 / 5 / 1
Регистрация: 15.06.2011
Сообщений: 16
26.06.2011, 17:30 8
в типизированном файле не может быть строк.
а в моей программе значение каждой второй компоненты присваивается элементам массива А.
и выводится на экран уже массив.

P.S.: исправьте n=0 на n=1
1
0 / 0 / 0
Регистрация: 24.06.2011
Сообщений: 20
26.06.2011, 17:35  [ТС] 9
ну он не выводит мне массив. точнее не тот массив.
программа выводит
массив:
0
1
2
3
4
5
6
7
8
9


а по идее он должен мне выводить как в проге с тектовым файлом
массив:
9
7
5
3
1


где 9 это 2 компонент
7 это 4 компонент и т.д.
0
5 / 5 / 1
Регистрация: 15.06.2011
Сообщений: 16
26.06.2011, 17:40 10
zoe4ka, скиньте мне ваш файл. bam_rugby@mail.ru
1
2854 / 1983 / 788
Регистрация: 23.09.2010
Сообщений: 4,877
26.06.2011, 18:50 11
Можно так.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Var
 i:integer;
 a:array[1..100] of integer;
 f:file of integer;
begin
Assign(f,'D:\zoe4ka.txt');
reset(f);
for i:=0 to (filesize(f)-1) div 2 do
begin
 seek(f,i*2);
 read(f,a[i*2 div 2+1]);
 write('  ',a[i*2 div 2+1],'  ');
end;
Close(f);
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.06.2011, 18:50

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

Перевести запись из типизированного файла в массив записей
Написать фрагмент программы, который переводит запись из типизированного файла в массив записей.

Можно ли числа из типизированного файла записать в массив?
Если в типизированном файле содержатся числа типа integer, можно ли записать их в массив? Если да,...

Просмотр записей типизированного файла через динамический массив
Задание выглядит так: На форме «Просмотр всех записей файла» организуйте сортировку записей по...

Не получается считать данные из типизированного файла в массив записи
Очень прошу, помогите! Считываю таким образом: Assign (f,'bil.txt'); Reset(f); n:=0; ...

Составить линейный односвязный список неповторяющихся слов из файла
Написать программу, составляющую по символьному файлу линейный упорядоченный список неповторяющихся...

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


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

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

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