Случайная генерация и запись даты в файл - Pascal ABC
Формулировка задачи:
Здравствуйте, нужна помощь в написание кода который генерирует случайно 30 дат в формате "ДД.ММ.ГГ" и записать их в файл "date.txt" в столбик. Буду очень благодарен ребята.
Решение задачи: «Случайная генерация и запись даты в файл»
textual
Листинг программы
function DneyVMecyace(Month, Year: Integer): Integer; {-Return the number of days in the specified month of a given year} begin case Month of 1, 3, 5, 7, 8, 10, 12: DneyVMecyace := 31; 4, 6, 9, 11: DneyVMecyace := 30; 2: if year mod 4=0 then DneyVMecyace := 29 else DneyVMecyace := 28; else DneyVMecyace := 0; end; end; function IntToStr2(n:integer):string; var s : string; begin Str(n:1,s); while Length(s)<2 do s:='0'+s; IntToStr2 := s; end; var i,d,m,y:integer; f:Text; begin Assign(f,'date.txt'); Rewrite(f); for i:=1 to 30 do begin y := Random(21)+2000; {год будет от 2000 до 2020} m := Random(12)+1; d := Random(DneyVMecyace(m,y))+1; WriteLn(f,IntToStr2(d)+'.'+IntToStr2(m)+'.'+IntToStr2(y mod 100)); end; Close(f); WriteLn('Готово! файл записан'); end.
Объяснение кода листинга программы
- Определяется функция DneyVMecyace, которая возвращает количество дней в указанном месяце года. В функции используется оператор case для определения количества дней в разных месяцах.
- Определяется функция IntToStr2, которая преобразует целое число в строку. В функции используется встроенная функция Str, которая форматирует число в строку, и оператор while для добавления нулей в начало строки до тех пор, пока длина строки меньше 2.
- Определяются переменные i, d, m и y, которые будут использоваться в цикле.
- Создается объект Text с именем f, который будет использоваться для записи даты в файл.
- Устанавливается ссылка на файл 'date.txt'.
- Выполняется операция Rewrite, которая очищает файл перед записью данных.
- Запускается цикл for, который выполняется 30 раз.
- Внутри цикла генерируются случайные значения для года (y), месяца (m) и дня (d).
- Вызывается функция DneyVMecyace для определения количества дней в месяце (d).
- Вызывается функция IntToStr2 для преобразования числа дня (d) в строку.
- Записывается дата в файл с использованием функции WriteLn.
- После завершения цикла закрывается файл с помощью функции Close.
- Выводится сообщение 'Готово! файл записан'.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д