• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Файлы текстовые на Паскале

Katerina Voy

Новые
Регистрация
19 Дек 2011
Сообщения
12
Реакции
0
Баллы
0
Файлы текстовые на Паскале

-----------------------------------------------------------
1: написать программу, которая выполняет следующие операции: ввод данных с клавиатуры в двумерный массив, запись данных с массива в файл (с использованием процедуры), входные данные - числа целого типа.

ЗАДАНИЕ: Считывание данных из файла и сортировка элементов первой строки в порядке возрастания, вывода сформулированного массива на экран. Массив 4х9.
-------------------------------------------------------------
2:сформулировать файл, содержащий информацию о дате рождения N ваших друзей (информация про одного друга вводится в одну буквенную переменную в следующем порядке: фамилия-ДД.ММ.ГГГГ, например - Сидоров - 7.03.1980). Используя сформированный файл, напечатать фамилии друзей, родившихся осенью.
--------------------------------------------------------------
3: задана матрица А размерностью 3х5. Записать все элементы матрицы в одномерный массив.


___________________________________ _____
ПОМОГИТЕ МНЕ ОЧЕНЬ ВАЖНА ВАША ПОМОЩЬ|
 
По первому заданию:
1) определяете необходимые переменные, в том числе и файловую
2) объявляете процедуру с произвольным именем для записи в файл значений элементов массива, при этом используются вложенные циклы for.
3) в цикле заполняете массив значениями с клавиатуры (используйте вложенные циклы for)
4) сортируете элементы первой строки массива, обращаясь к каждому элементу в цикле.
5) вызываете процедуру записи в файл.

По второму заданию:
1) определяете все необходимые переменные
2) запрашиваете количество друзей
3) создаете файл и в цикле передаете в него информацию о друзьях, введенных с клавиатуры. По окончании ввода закрываете файл.
4) Открываете файл по чтению и считываете из него информацию построчно в цикле до конца файла. Используя строковые функции, анализируете значение вырезанного участка строки, содержащего символы с номерами length-7 и length-6, которые соответствуют номеру месяца. Если эти два символа содержат информацию, равную номеру осеннего месяца (09, 10, 11), то считанную из файла строку распечатываете.

Третье задание практически повторяет первое, за исключением отсутствия сортировки.
 
3: задана матрица А размерностью 3х5. Записать все элементы матрицы в одномерный массив.
Ладно, так и быть:
Код:
VAR
 M:Array[1..3,1..5] of Byte;
 V:Array[1..15] of Byte;
 i,j,k:Byte;

BEGIN
 Randomize;
 For i:=1 to 3 do
  begin
   For j:=1 to 5 do
    begin
     k:=(i-1)*5+j;
     M[i,j]:=Random(100);
     V[k]:=M[i,j];
     Write(M[i,j]:4);
    end;
   Writeln;
  end;
 Writeln;
 For k:=1 to 15 do Write(V[k]:4);
 Readln
END.
 
Владимир, да уж, сказать нечего, помог как смог :))

Когда уважаемая Katerina Voy объявится на форуме со своими наработками программ, можно и дальше помогать в том же духе :D
 
Не-не, ни в коем случае, все правильно, только вот учиться за топикстартершу никто не должен :D
 
Не-не, ни в коем случае, все правильно, только вот учиться за топикстартершу никто не должен
А, чего-то сегодня был на работе в благодушном настроении, так дай, думаю, нарисую эту задачку, благо больше 3 минут не заняло. :D
 
Не-не, ни в коем случае, все правильно, только вот учиться за топикстартершу никто не должен :D
ребят учится я буду еще ого-го сколько) и я не заставляю никого делать за меня задания) но вы просто не представляете как мне тяжело самой во всем разобраться. мне нужен всего лишь пример. В общем на вас вся надежда
 
Ладно, так и быть:
Код:
VAR
 M:Array[1..3,1..5] of Byte;
 V:Array[1..15] of Byte;
 i,j,k:Byte;

BEGIN
 Randomize;
 For i:=1 to 3 do
  begin
   For j:=1 to 5 do
    begin
     k:=(i-1)*5+j;
     M[i,j]:=Random(100);
     V[k]:=M[i,j];
     Write(M[i,j]:4);
    end;
   Writeln;
  end;
 Writeln;
 For k:=1 to 15 do Write(V[k]:4);
 Readln
END.
да, но не все так просто.
нужно использовать текстовые файлы, то есть, как я понимаю, записать все данные в файл
 
да, но не все так просто. нужно использовать текстовые файлы, то есть, как я понимаю, записать все данные в файл
Да, это - безумие! Вот прямо - в файл? Кошмар... И всё-таки, мобилизовав все свои и доступные чужие интеллектуальные ресурсы, я совершил вот такой прорыв в программировании:
Код:
VAR
 M:Array[1..3,1..5] of Byte;
 V:Array[1..15] of Byte;
 i,j,k:Byte;
 f:text;

BEGIN
 Assign(f,'D:\Matrix.txt'); {Имя и расположение файла можете, конечно, поменять}
 Rewrite(f);
 Randomize;
 For i:=1 to 3 do
  begin
   For j:=1 to 5 do
    begin
     k:=(i-1)*5+j;
     M[i,j]:=Random(100);
     V[k]:=M[i,j];
     Write(f,M[i,j]:4);
    end;
   Writeln(f);
  end;
 Writeln(f);
 For k:=1 to 15 do Write(f,V[k]:4);
 Close(f);
END.
А может быть, Вам нужно сначала изготовить исходную матрицу, записав ее в файл, а потом считать данные из этого файла, сформировать из них одномерный массив, каковой отправить в другой файл? Ну тогда это будет вообще конец света. Вот такой:
Код:
VAR
 M:Array[1..3,1..5] of Byte;
 V:Array[1..15] of Byte;
 i,j,k:Byte;
 f1,f2:text;

BEGIN
 Assign(f1,'D:\Matrix1.txt');
 Rewrite(f1);
 Randomize;
 For i:=1 to 3 do
  begin
   For j:=1 to 5 do Write(f1,Random(100):4);
   Writeln(f1);
  end;
 Close(f1);
 Reset(f1);
 Assign(f2,'D:\Matrix2.txt');
 Rewrite(f2);
 For i:=1 to 3 do
  begin
   For j:=1 to 5 do
    begin
     k:=(i-1)*5+j;
     Read(f1,M[i,j]);
     V[k]:=M[i,j];
    end;
   Readln(f1);
  end;
 For k:=1 to 15 do Write(f2,V[k]:4);
 Close(f1);
 Close(f2);
END.
 
Да, это - безумие! Вот прямо - в файл? Кошмар... И всё-таки, мобилизовав все свои и доступные чужие интеллектуальные ресурсы, я совершил вот такой прорыв в программировании:
поздравляю с прорывом!
и спасибо конечно
 
Назад
Сверху