Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 13.12.2007, 00:29
Vitek220 Vitek220 вне форума
Заблокирован
 
Регистрация: 03.12.2007
Сообщения: 22
Репутация: 5
Сообщение Типизированные файлы целых чисел

Записать в файл f N целых чисел, полученных с помощью генератора случайных чисел. Заполнить файл G числами, которые являются произведениями соседних компонентов файла f
Ответить с цитированием
  #2  
Старый 14.12.2007, 04:05
Rosenkrantz Rosenkrantz вне форума
Активный
 
Регистрация: 04.12.2007
Адрес: Москва
Сообщения: 234
Версия Delphi: Delphi 7
Репутация: 40
По умолчанию

Код:
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
program FileOfInteger;
 
{$APPTYPE CONSOLE}
 
uses
  Windows, SysUtils;
 
const
  DATA_FILE_NAME = 'datafile.int';
  MULT_FILE_NAME = 'multfile.int';
 
//------------------------------------------------------------------------------
// Вывод на экран строки
//------------------------------------------------------------------------------
procedure WriteStr(S: String);
var
  Dst: Array [0..255] Of Char;
begin
  AnsiToOem(PChar(S), Dst);
  Writeln(Dst);
end;
 
//------------------------------------------------------------------------------
// Форматирование значения для вывода на экран
//------------------------------------------------------------------------------
function FmtVal(X:Integer): String;
begin
  Result := Format('%6d', [X]);
end;
 
var
  NumCount : Integer;
  F1, F2   : File of Integer;
  X, Y     : Integer;
  i        : Integer;
begin
  WriteStr('Введите число элементов (0 - выход):');
  Readln(NumCount);
  if NumCount = 0 then Halt;
 
  Randomize;
 
  // Записываем числа в файл ---------------------------------------------------
  // Открыть файл для записи
  Writeln;
  WriteStr('Генерация и запись в файл:');
  AssignFile(F1, DATA_FILE_NAME);
  Rewrite(F1);
  // Сгенерировать и записать числа
  for i := 0 to NumCount - 1 do begin
    X := Random(10);    // Сгенерировать
    Writeln(FmtVal(X)); // Показать число на экране
 
    Write(F1, X);       // Записать в файл
  end;
  // Закрыть файл
  CloseFile(F1);
 
  Writeln;
  WriteStr('Суммирование и запись в файл:');
 
  // Читаем числа из получившегося файла, перемножаем и пишем в другой ---------
  // Открываем первый файл на чтение, второй на запись
  AssignFile(F1, DATA_FILE_NAME);
  Reset(F1);
  AssignFile(F2, MULT_FILE_NAME);
  Rewrite(F2);
  Read(F1, X);          // Прочитать первое число
  for i := 1 to NumCount - 1 do begin
    Read(F1, Y);        // Прочитать следующее число
    Write(FmtVal(X) + ' * ' + FmtVal(Y) + ' = ');
 
    X := X * Y;         // Перемножить
    Writeln(FmtVal(X)); // Отобразить произведение на экране
 
    Write(F2, X);       // Записать произведение в файл
 
    X := Y;             // Сохраняем число для следующего шага
  end;
  // Закрыть файлы
  CloseFile(F1);
  CloseFile(F2);
 
  Writeln;
  WriteStr('Нажмите Enter.');
  Readln;
end.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 07:51.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025