Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Lazarus, Free Pascal, CodeTyphon
Регистрация

Восстановить пароль
Повторная активизация e-mail



Ответ
 
Опции темы
Старый 16.10.2016, 16:37   #1
tako_superuser
Пользователь
 
Регистрация: 13.03.2015
Сообщений: 11
Репутация: 10
Вопрос !Последовательные файлы! PASCAL

Здравствуйте ув. форумчане.
Вы уж извините за сей открытую тему. Требуется закодить на пасе следующее г.... -

"Создать файл, содержащий записи о дате: день (1..31), месяц
(1..12), год (00..99). Обработать этот файл и указать максимальную
дату для второй половины года."

Помогите пожалуйста студенту-чайнику.

--------------------------
с Уважением, tako_superuser!
tako_superuser вне форума   Ответить с цитированием
Старый 16.10.2016, 16:47   #2
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 11,522
Репутация: 2355

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

И? В чем именно проблема?
Alex11223 на форуме   Ответить с цитированием
Старый 16.10.2016, 16:59   #3
tako_superuser
Пользователь
 
Регистрация: 13.03.2015
Сообщений: 11
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
И? В чем именно проблема?
Не знаю как решить данную задачу. Было бы очень здорово если смогли бы показать как написать код к этой задаче...

Последний раз редактировалось tako_superuser; 16.10.2016 в 17:31.
tako_superuser вне форума   Ответить с цитированием
Старый 16.10.2016, 18:22   #4
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 11,522
Репутация: 2355

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

Цитата:
Сообщение от tako_superuser Посмотреть сообщение
Не знаю как решить данную задачу
Если нет никаких идей и вопросов, то значит и не пытались узнать.
Alex11223 на форуме   Ответить с цитированием
Старый 16.10.2016, 18:25   #5
tako_superuser
Пользователь
 
Регистрация: 13.03.2015
Сообщений: 11
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Если нет никаких идей и вопросов, то значит и не пытались узнать.
Я вам честно скажу, у меня очень сильно поджимает время.
Я много времени потратил на решение задач связанных с интервалами и множествами...
tako_superuser вне форума   Ответить с цитированием
Старый 16.10.2016, 18:30   #6
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 11,522
Репутация: 2355

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

Какое время? На поезд в армию опаздываете?

Обычно можно договориться с преподом о более позднем сроке сдачи задания, особенно если это не конец семестра.
Alex11223 на форуме   Ответить с цитированием
Старый 08.01.2017, 00:11   #7
tako_superuser
Пользователь
 
Регистрация: 13.03.2015
Сообщений: 11
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Какое время? На поезд в армию опаздываете?

Обычно можно договориться с преподом о более позднем сроке сдачи задания, особенно если это не конец семестра.
Шутничёк...
tako_superuser вне форума   Ответить с цитированием
Старый 08.01.2017, 00:12   #8
tako_superuser
Пользователь
 
Регистрация: 13.03.2015
Сообщений: 11
Репутация: 10
По умолчанию

(Тема закрыта!)
Вот решение на мою задачу.

Код:

uses crt;
type data=record
          d,m,g:integer
          end;
var f:file of data;
    n,i,k:integer;
    d,mx:data;
begin
clrscr;
assign(f,'daty');
rewrite(f);
write('Сколько дат записать в файл n=');
readln(n);
for i:=1 to n do
 begin
  with d do
   begin
    writeln('Дата ',i);
    repeat
    write('День от 1 до 31: ');readln(d);
    until d in [1..31];
    repeat
    write('Месяц от 1 до 12: ');readln(m);
    until m in [1..12];
    repeat
    write('Год от 0 до 99: ');readln(g);
    until g in [0..99];
   end;
  write(f,d);
 end;
reset(f);
mx.d:=0;
mx.m:=0;
mx.g:=0;
k:=0;
while not eof(f) do
 begin
  read(f,d);
  if d.m>6 then
   begin
    k:=1;
    if(d.m>mx.m)or((d.m=mx.m)and(d.d>mx.d))then mx:=d
   end;
 end;
close(f);
if k=0 then write('Нет дат из второй половины года')
else
 begin
  write('Максимальная дата из второй половины года ');
  write(mx.d,'.',mx.m,'.');
  if mx.g<10 then write('0',mx.g)
  else write(mx.g)
 end;
readln
end.

tako_superuser вне форума   Ответить с цитированием
Ответ



Опции темы

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal. Файлы Kind1 Помощь студентам 2 14.12.2013 23:52
Задача turbo pascal на тему: файлы с произвольным доступом в Pascal ExCiTeC Паскаль 0 28.01.2013 20:36
Последовательные проблемы с картами(сетевой и звуковой) st_ Железо 8 18.05.2010 15:32
Pascal, файлы natasha220889 Помощь студентам 2 15.11.2009 19:25
соединение 3 рабочих станций через последовательные порты allaur Помощь студентам 0 14.11.2009 13:55




16:00.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

Покупайте на сайте www.skinon.ru уникальные чехлы и наклейки для телефонов.
таргетированный трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru