![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
-Dimanez- |
![]()
Сообщение
#1
|
Гость ![]() |
не в тему: почему не могу создавать новые темы будучи пользователем, а гостем без проблем...? дескриминация)
есть программа....где описывается массив записей,которые содержит информацию о нескольких деталях(наименование, масса, габаитные размеры: длина, ширина,высота: материал). опеределиьт массу всех деталей. вот сам текст программы: program zapisi; const nmax=10; type plant=record name:string[10]; massa:integer; gr:record dl:integer; sh:integer; vis:integer; end; mtl:string[10] end; var summary; array [1..nmax] of plant; i,k,n,s:integer; begin writeln('введите количество деталей'); readln(n); {ввод записей} for i;=1 to n do with summary[i] do begin writeln('введите данные о',i,'-ой детале:'); writeln('наименование'); readln(name); with gr do writeln('длина'); read(dl); writeln('ширина'); read(sh); writeln('высота'); read(vis) end; writeln('материал'); readln(mtl); end; {вывод заголовка таблицы} ... ... {формирование и вывод итоговой строки} s:=0; for I:=1 to n do with summary[i] do begin s:=s+massa; end; with summary[n+1] do begin name:='сумма масс'; massa:=s; begin for k:=1 to 80 do write('_'); writeln; end; writeln('|',name,'':12-length(name),'|':2,s:8,'|':2); end; for k:=1 to 80 do write('_'); writeln; end. затрудения: - при вводи строк, игнорирует строку-материал.... - не хочет считать сумму масс..оставляет поле пустым....возможно вывод итоговой строки неправильно оформил... наедеюсь на помощб))) |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата при вводи строк, игнорирует строку-материал.... При вводе строк надо пользоваться ReadLn вместо Read, если нужно объяснение, почему - в поиск, уже неоднократно объяснялось... Поменяй все Read-ы на ReadLn...А вот со вторым вопросом - разбираться надо, что там у тебя накручено, но поскольку текст не оформлен тегами (и, естественно, потерял все форматирование - если оно и было), то этого я делать не буду... Добавлено через 3 мин. По поводу Цитата не могу создавать новые темы будучи пользователем, а гостем без проблем - идешь сюда: Книга жалоб и предложенийподнимаешь глаза наверх, и в разделе объявление видишь заголовок... Смотришь, в чем дело... |
neic |
![]()
Сообщение
#3
|
Студент 3-к группы (ИГТК) ![]() Группа: Пользователи Сообщений: 32 Пол: Мужской Реальное имя: Артём Репутация: ![]() ![]() ![]() |
1. Вот ты-то уморил =).
for i;=1 to n do with summary[i] do begin writeln('введите данные о',i,'-ой детале:'); writeln('наименование'); readln(name); with gr do begin writeln('длина'); read(dl); writeln('ширина'); read(sh); writeln('высота'); read(vis) end; writeln('материал'); readln(mtl); end; А begin кто за тя вставлять будет? Кот Вася из первого подъезда? 2. А я в коде вообще не вижу чтобы ты массу заполнял ![]() ![]() Сообщение отредактировано: neic - 11.12.2007 2:09 -------------------- Жизнь - это лестница. Когда одна ступень проваливается, 2-ая нога находиться на второй ступеньке, а значит есть и второй шанс... ©
|
Dimanez |
![]()
Сообщение
#4
|
![]() Группа: Пользователи Сообщений: 6 Пол: Мужской Репутация: ![]() ![]() ![]() |
черт..правда))..спасибо...сейчас испробуем)
насчет begin - не первый его пропуск в прогрмме(( Сообщение отредактировано: Dimanez - 11.12.2007 2:11 |
neic |
![]()
Сообщение
#5
|
Студент 3-к группы (ИГТК) ![]() Группа: Пользователи Сообщений: 32 Пол: Мужской Реальное имя: Артём Репутация: ![]() ![]() ![]() |
Пиши сразу же форматом. А так сам путаешься и других в заблуждение вводишь. ;)
Будут вопросы стучи в тему ;) -------------------- Жизнь - это лестница. Когда одна ступень проваливается, 2-ая нога находиться на второй ступеньке, а значит есть и второй шанс... ©
|
Dimanez |
![]()
Сообщение
#6
|
![]() Группа: Пользователи Сообщений: 6 Пол: Мужской Репутация: ![]() ![]() ![]() |
вот текст программы...с выводом таблицы итд...есь один момент...
при вводе более одной детали, программка выводи ток первую строку ..но ! подсчет суммы (что и требуется от программы) идет со всех данных о деталях.. то есть..выводит только одну первую строку... помогите разобраться.. program lab7; Сообщение отредактировано: Dimanez - 20.12.2007 22:42 |
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
{формирование и вывод итоговой строки}Отмеченное место является ошибкой... У тебя там присутствует вложенный цикл, причем по той же переменной I, что и внешний, "Вывод строк таблицы"... Отформатируй исходник как положено - сам все увидишь... |
Dimanez |
![]()
Сообщение
#8
|
![]() Группа: Пользователи Сообщений: 6 Пол: Мужской Репутация: ![]() ![]() ![]() |
спасиб)...помогло)...всроду не догадался бы)
{формирование и вывод итоговой строки} ввел новый парметр цикла... но возник дургой вопрос...теперь после каждой строки записи он выдает итоговую строк с суммой масс...а не в самом конце...исправить так и не получилось... результат один и тот же...или после каждой строки или макси-шоу ввиде бесконечного вывода строк... |
volvo |
![]()
Сообщение
#9
|
Гость ![]() |
Видимо, ты так и не переформатировал исходник. И не видишь, где у тебя один цикл, а где - другой... Вот же они:
{вывод строк таблицы}Можно здесь ошибиться? |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 6:32 |