Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 14.12.2017, 18:24   #1 (permalink)
NomadZ
Member
 
Регистрация: 14.12.2017
Сообщений: 18
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Файлы, текстовые и типизированные

Здравствуйте, помогите пожалуйста с написанием кода для следующей задачи на Pascal'е.

Задача:
Создать текстовый файл, в который построчно записать квадратный массив massiv_n^2, заполненный целыми случайными числами в диапазоне от v_min до v_max. Размер массива n задать константой. Границы диапазона v_min и v_max задать с консоли. Прочитать из созданного файла все диагонали, параллельные главной, и вывести их на экран построчно. При чтении из файла считать размер массива неизвестным. Определить его при чтении файла.
NomadZ вне форума   Ответить с цитированием

Старый 14.12.2017, 18:24
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

В похожих темах обычно много интересных советов

Типизированные файлы, Паскаль
Типизированные файлы
Паскаль, типизированные файлы

Старый 14.12.2017, 21:20   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от NomadZ Посмотреть сообщение
Здравствуйте, помогите пожалуйста с написанием кода для следующей задачи на Pascal'е.

Задача:
Создать текстовый файл, в который построчно записать квадратный массив massiv_n^2, заполненный целыми случайными числами в диапазоне от v_min до v_max. Размер массива n задать константой. Границы диапазона v_min и v_max задать с консоли. Прочитать из созданного файла все диагонали, параллельные главной, и вывести их на экран построчно. При чтении из файла считать размер массива неизвестным. Определить его при чтении файла.
Да... заковыристая задачка оказалась... Но интересная.
Вот, пожалуйста:
Код:
Uses CRT;

Const
 n=7;

Var
 M:Array[1..n,1..n] of Integer;
 v_min,v_max,A:Integer;
 i,j,k,n1:byte;
 f:Text;
 S:String;


Begin
 Assign(f,'D:\mmm.txt');
 Rewrite(f);
 ClrScr;
 Write(' v_min = ');
 Readln(v_min);
 Write(' v_max = ');
 Readln(v_max);
 Writeln;
 Randomize;
 for i:=1 to n do
  begin
   for j:=1 to n do
    begin
     M[i,j]:=v_min+Random(v_max-v_min+1);
     write(M[i,j]:5);
     write(f,M[i,j]:6,' ');
    end;
   writeln;
   writeln(f);
  end;
 Close(f);
 Writeln;
 Reset(f);
 n1:=0;
 While Not(Eof(f)) do
  begin
   Readln(f,S);
   Inc(n1);
  end;
 for j:=n1 downto 1 do
  begin
   Reset(f);
   for i:=1 to n1+1-j do
    begin
     for k:=1 to j+i-1 do read(f,A);
     readln(f);
     write(A:5);
    end;
   Writeln;
  end;
 for i:=2 to n1 do
  begin
   Reset(f);
   for k:=1 to i-1 do readln(f);
   for k:=i to n1 do
    begin
     for j:=1 to k-i+1 do read(f,A);
     readln(f);
     write(A:5);
    end;
   Writeln;
  end;
 Close(f);
 ReadKey
End.
Имя файла и его расположение возьмите, конечно, свои.
Миниатюры
aa01.jpg  
Vladimir_S вне форума   Ответить с цитированием
Старый 14.12.2017, 21:36   #3 (permalink)
NomadZ
Member
 
Регистрация: 14.12.2017
Сообщений: 18
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Большое спасибо! Вы очень помогли!
NomadZ вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Метки
pascal, квадратный массив, типизированные файлы, файл

Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 05:43.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.