Проверьте, пожалуйста, программу. Паскаль
Задача:
сведения об автомобиле состоят из его марки, номера, цвета, фамилии владельца.Подсчитать количество автомобилей заданной марки. type vedomost=record marka:string; nomer:integer; color:string; familia:string; end; var danue:array[1..3] of vedomost; i,m:integer; k:string; begin for i:=1 to 3 do with danue[i] do begin writeln('Марка-'); readln(marka); writeln('Номер-'); readln(nomer); writeln('Цвет-');readln(color); writeln('Фамилия-');readln(familia); end; writeln('Марка машины для подсчета');readln(k); for i:=1 to 3 do begin with danue[i] do if marka=k then begin writeln(marka); end; end; readln; end. |
Данные надо вводить или уже есть? И что за дебилизм с "for i:=1 to 3 do"??? Это в смысле, если ты вводишь, то не более трех машинок? А 100? А 101?
|
Цитата:
|
Цитата:
1. Несмотря на недопустимо-хамский тон, по сути Debianer прав в том смысле, что полное число машин лучше задать в виде константы, которую легко можно менять при желании. 2. Подсказки при вводе лучше давать без перевода строки и с пробелом в конце. Красивее. 3. В задании требуется подсчитать количество машин данной марки, а не выводить несколько раз название этой марки. 4. Если оператор (в частности, if..then) действует на ОДИН операнд, то операторные скобки begin..end ставить не обязательно. Можно, но не нужно. Итого, с учетом сказанного: Код:
const |
За тон прошу прощения, погорячился
|
И еще один совет: не задавайте границы массива, лучше воспользуйтесь динамическим. Насколько я помню, в турбопаскале динамических массивов не было, вместо них использовали списки.
Погуглив, нарыл достаточно информации по этому. Просто при использовании динамического массива вы отвязываетесь от предельного размера данных, т.е. можно ввести и три машинки, и 133. Организовать данную работу можно через указатели и GetMem. Считаю, что так будет наиболее правильно, жизненно и соответствовать условиям задачи. ЗЫ: да, код болучится более сложным |
Цитата:
|
Часовой пояс GMT +4, время: 21:16. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.