-кол-во не явившихся по уважительной причине -кол-во не явившихся по не уважительной причине
-кол-во очисленных
2. Распечатать файл в виде сводки таблицы. 3. Для двух, трех групп скорректировать 3-ри последних поля.
zara44
25.04.2007 21:01
Пожалуйста помогите хоть чем-нибудь. Я никак не догоняю как делать... заранее спасибо....
Lapp
25.04.2007 21:08
Хоть что-нибудь пытался сделать? Если да, то покажи результат, пожалуйста. Даже если совсем немного.
zara44
25.04.2007 21:13
Пытался. Но дома этого нету. Есть тока в колледже.
Lapp
25.04.2007 21:17
Цитата(zara44 @ 25.04.2007 22:13)
дома этого нету. Есть тока в колледже.
О - да там так много, что ты не можешь сейчас повторить? Попробуй все же.. Или приноси текст завтра - все исправим, будет в лучшем виде
zara44
25.04.2007 21:27
Окей. Завтра постараюсь принести.
zara44
30.04.2007 15:19
Вот что я смог сделать:
program zap; uses crt; type zap=record end; var kolledg:array[1..100] of zap; kurs:array[1..10] of byte; gruppa:array[1..10] of string[10]; kolne:array[1..100] of word; koly:array[1..100] of word; otcisl:array[1.100] of byte; shifr:string[8]; i,n:integer; f:file; begin clrscr; read(n); assign(f,shifr); reset(f); for i:=1 to n do begin write('shifr fakulteta'); readln(shifr[i]); write('kurs'); readln(kurs[i]); write('kol-vo po ne uvagitelnoy'); readln(kolne[i]); write('kol-vo po uvagitelnoy'); readln(koly[i]); write('kol-vo otchislenih'); readln(otcisl[i]); rewrite(f); close(f); end; readkey; end.
Извините что так долго. Помогите что надо делать дальше????
Tan
30.04.2007 15:23
а поля записи где ?
zara44
30.04.2007 15:25
А их вроде не обязательно писать, я их прописал в варе.
Tan
30.04.2007 15:26
Как необязательно ? А как тогда ты себе представляешь обращение к полю записи ?
zara44
30.04.2007 15:27
в варе же тип of zap. Вот и связь.
Tan
30.04.2007 15:28
массив пустых записей, в этом есть смысл ?
volvo
30.04.2007 15:29
Цитата
в варе же тип of zap
Угу... А zap - ПУСТОЙ... Вот и где связь?
zara44
30.04.2007 15:31
program zap; uses crt; type zap=record kurs:array[1..10] of byte; gruppa:array[1..10] of string[10]; kolne:array[1..100] of word; koly:array[1..100] of word; otcisl:array[1.100] of byte; shifr:string[8]; end; var kolledg:array[1..100] of zap; i,n:integer; f:file; begin clrscr; read(n); assign(f,shifr); reset(f); for i:=1 to n do begin write('shifr fakulteta'); readln(shifr[i]); write('kurs'); readln(kurs[i]); write('kol-vo po ne uvagitelnoy'); readln(kolne[i]); write('kol-vo po uvagitelnoy'); readln(koly[i]); write('kol-vo otchislenih'); readln(otcisl[i]); rewrite(f); close(f); end; readkey; end.
Tan
30.04.2007 15:34
что дальше не ясно ?
zara44
30.04.2007 15:35
Неааааа. Че дальше не знаю.
Tan
30.04.2007 15:45
Теперь вероятно тебе надо разобраться как работать с записями, для начала было бы здорово прочитать соответствующий раздел, ты неправильно пытаешься прочитать данные о колледже, для этого надо объяснить программе что ты работаешь именно с записями zap, а не другими переменными, то есть
With zap{название записи} do begin {работаешь с полями} end.
И ещё : у тебя поля состоят из массивов, которые разных размеров, а твой цикл для считывания подразумевает, что все массивы полей одинаковы по количеству элементов.
мисс_граффити
30.04.2007 15:47
вот это - что за изврат?
zap=record kurs:array[1..10] of byte; gruppa:array[1..10] of string[10]; kolne:array[1..100] of word; koly:array[1..100] of word; otcisl:array[1.100] of byte; shifr:string[8]; end;
зачем в каждой записи такие огроменные массивы?!
чтобы было понятнее. представь себе ящик с личными делами студентов. это - массив записей. каждое личное дело содержит группу, шифр и т.д. одну штуку! не массив!
Tan
30.04.2007 16:24
Погляди, если я не ошибаюсь тут то, что ты пытался реализовать, то есть считывание информации с последующье записью в файл, только перменные взял свои (типы можешь изменить под свои).
Uses crt; Const N = 10; filename = 'Data.txt'; type school = Record FacultyCode : integer; Course : integer; Number : integer; GoodGuys : integer; BadGuys : integer; VeryBadGuys : integer; end; var f : file of school; ms : array [1..N] of school; K : byte; i : integer; begin Clrscr; assign (f,filename); Rewrite (f); Writeln ('How much records you will create ? '); readln (K); for i:= 1 to K do With ms[i] do begin Clrscr; Writeln ('Input faculty code of ',i, ' record'); Readln (ms[i].FacultyCode); Writeln ('Input course of ',i, ' record'); Readln (ms[i].Course); Writeln ('Input number of ',i, ' record'); Readln (ms[i].Number); Writeln ('Input amount of GoodGuys of ',i, ' record'); Readln (ms[i].GoodGuys); Writeln ('Input amount of BadGuys of ',i, ' record'); Readln (ms[i].BadGuys); Writeln ('Input amount of VeryBadGuys in ',i, ' record'); Readln (ms[i].VeryBadGuys); write (f,ms[i]); Writeln ('Data has been written. Press any key...'); readkey; end; Close (f); end.
zara44
30.04.2007 22:00
Щас посмотрю....
Добавлено через 5 мин. Спасибо))))))). А что мне надо чтобы задание сделать????
Tan
30.04.2007 23:36
Цитата
3. Для двух, трех групп скорректировать 3-ри последних поля
Было бы супер если бы объяснили значение этой части задания.
zara44
1.05.2007 0:32
А первые два???? или они уже сделаны??? Сам не могу понять свое задание, мне дали его и ничего не объяснили.((((
Tan
1.05.2007 10:18
Ну в приведённом мной примере создаётся типизированный файл и после введения данных они в него записываются. Но, в моём случае после запуска программы файл каждый раз создаётся заново, уточни, тебе так надо, либо тебе надо, чтобы данные оставались там после завершения работы программы. 2й пункт твоего задания подразумевает вывод на экран, здесь всё элементарно. Считываешь запись с файла и выводишь на экран. Я бы сделал так : попросил бы ввести номер школы и выводил соответствующую запись. А по поводу 3го пункта, я не дождался ответа.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.