Помощь - Поиск - Пользователи - Календарь
Полная версия: Задача на создание файла
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Pistoletka
Подскажите, как перевести правильно из типа char в integer?

Создайте файл информации по итогам сессии result.dat. Для каждой группы каждого курса в файл заносится следующая информация (количество курсов и групп на курсе фиксировано, сами номера курсов и групп в записи не хранятся);
* количество студентов в группе;
* количество допущенных к сессии;
* количество сдавших на «отлично»;
* количество сдавших на «отлично» и «хорошо»;
* количество получивших «неудовлетворительно».

Type element=record
kg:char;
kd:char;
ko:char;
koh:char;
kn:char;
end;
var
f:file of element;
x:element;
c:char;
Begin
Assign (f,'C:\Users\Admin\Desktop\Result.txt');
rewrite(f);
writeln ('enter chars');
repeat
read(x.kg);
read(x.kd);
read(x.ko);
read(x.koh);
read(x.kn);
write(f,x);
writeln('continue? y/n');
readln©;
until c='n';
close(f);
End.
Федосеев Павел
А зачем вы читаете в переменные char, а не сразу в integer?
Замените в объявлении тип
Type element=record
kg: integer;
kd: integer;
ko: integer;
koh: integer;
kn: integer;
end;
а всё остальное без изменений
Pistoletka
Цитата(Федосеев Павел @ 16.05.2016 9:37) *

А зачем вы читаете в переменные char, а не сразу в integer?
Замените в объявлении тип
Type element=record
kg: integer;
kd: integer;
ko: integer;
koh: integer;
kn: integer;
end;
а всё остальное без изменений


Я поменяла тип, у меня ошибка вылезает (Ошибка времени выполнения: Входная строка имела неверный формат.)
В этой строке.
  read(x.kg);
Федосеев Павел
Вводите данные через пробел.
Или как вы их вводите? Может быть при вводе c несколько раз нажимаете клавиши? Замените c:char на c: string
А сравнивайте c[1];
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.