01.11.2011, 11:41 | #1 (permalink) |
Новичок
Регистрация: 01.11.2011
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Файл, файловый тип, Turbo Pascal
1 программа Создайте типизированный файл из 10 Записей. В полях записи отдельно хранятся целая и дробная часть вещественного числа. Целая часть двухзначная, дробная-трехзначная. Значение целой и дробной частей числа выработать Random. 2 программа Вывести из файла на экран в форме таблицы целые и дробные части чисел. Объединить в единое целое соответствующие целые и дробные части. Выведите вещественные числа в одну строку. Отдельной строкой выведите на экран, вещественные числа кратные 3. |
01.11.2011, 11:41 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
В данных темах наверняка есть ответы которые прояснят ситуацию Turbo Pascal 8, дано натуральное число n Cтек, Turbo Pascal Turbo Pascal. Оператор CASE Синтаксический анализатор. Turbo Pascal Помогите решить задачи в Turbo Pascal |
02.11.2011, 23:30 | #2 (permalink) |
Новичок
Регистрация: 01.11.2011
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Это первая программа. Исправьте, пожалуйста
Program pr; Type Chislo=Record Cch: String[2]; Dch:=String[3]; End; Var FP1:File Of Chislo; PP1:Chislo; I,J,K:Real; Begin Randomize; Assign (FP1,'C:/Landguage/TP/GAN.010'); Rewrite(FP1); For K:=1 To 10 Do Begin ReadLn(PP1.Cch:=Int(J)); ReadLn(PP1.Dch:=Frac(I)); For J:=1 To 10 Do PP1.Cch[J]:=Random(10000); For I:=1 To 10 Do PP1.Dch[I]:=Random(10000); End; Close(FP1); End. |
03.11.2011, 11:26 | #3 (permalink) | |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Хорошо, приступаю. Сразу скажу - ошибка на ошибке! И начну с формулировки условия задачи:
Видите ли, вещественное число не может быть кратно чему бы то ни было, это - свойство исключительно целых чисел. Значит, в условии - брёх. Поехали дальше. Во-первых, строковый тип здесь абсолютно ни к чему, нужен числовой целый, во-вторых, в строке, где Dch, знак присваивания недопустим, нужно двоеточие. Переменные циклов могут быть только целочисленного формата, а у Вас - вещественный. Судя по "C:" у Вас OC Windows, а не Linux, а в таком случае в путях применяются слэши типа "\". Кроме того, странное название папки - "Landguage". Конечно, папку можно обозвать, как угодно, но может быть всё-таки "Language" - язык (англ.)? Цитата:
В общем, вот отлаженная программа (путь к файлу поправьте на свой вкус): Код:
Type Chislo=Record Cch:Word; Dch:Word; End; Var FP1:File Of Chislo; PP1:Chislo; PPR:Real; K:Integer; Begin Randomize; Assign (FP1,'D:\GAN.010'); Rewrite(FP1); For K:=1 To 10 Do Begin PP1.Cch:=Random(90)+10; PP1.Dch:=Random(900)+100; Write(FP1,PP1); End; Close(FP1); Reset(FP1); For K:=1 To 10 Do Begin Read(FP1,PP1); PPR:=1.0*PP1.Cch+PP1.Dch/1000; Writeln(K:2,PP1.Cch:7, PP1.Dch:8,PPR:12:3); End; Close(FP1); Readln End. |
|
03.11.2011, 11:41 | #4 (permalink) |
Новичок
Регистрация: 01.11.2011
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Спасибо большое!!! Условие преподаватель давал, так что на счет него ничего не могу сказать...
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|