Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


ќпределени€ данных




ѕонима€ особую важность данных, приведем несколько правил их определени€ и использовани€ [4].

ќбъ€вл€йте все переменные €вно. ¬о многих €зыках программиро≠вани€ разрешаетс€ определ€ть данные не€вно, просто использу€ их имена в выполн€емых операторах. “акие Ђсокращени€ї предназначены дл€ диле≠тантов или тех, кто программирует от случа€ к случаю, но не дл€ програм≠мистов-профессионалов. ѕрофессиональный программист должен €вно определ€ть или объ€вл€ть все переменные в самом начале модул€.

ќбъ€вл€йте все атрибуты каждой переменной. Ќе следует также пользоватьс€ имеющимис€ в €зыке сокращени€ми дл€ объ€влени€ aтpибyтoв, не указанных €вно, по умолчанию. ѕроцесс выбора атрибутов по умолчанию часто сложен и ведет к ошибкам, если программист не вполне его понимает. Ѕолее того, некоторые компил€торы позвол€ют на каждой вычислительной установке измен€ть правила умолчани€, что €вл€≠етс€ крайне опасной практикой.

»збегайте €вных констант. ¬ исполн€емом тексте программы не должно быть абсолютных констант, за исключением таких общеупотреби≠тельных значений, как единица, нуль, число ѕ» и т.п. ƒл€ констант надо вводить символические имена и использовать их в программе

а=sin(0,7);

следует заменить на фрагмент программы:

с=0,7;

а=sin(c);

Ќикогда не используйте несколько имен дл€ одной области пам€ти.

Ќикогда не используйте переменную более чем дл€ одной цели. –ас≠пространенный прием экономии лишнего слова пам€ти состоит в повтор≠ном использовании переменной в различных цел€х. ѕрограммист вполне может решить: Ђя закончил работать с TIME дл€ расчетов времени, по≠этому теперь буду использовать эту переменную как промежуточную при вычислении датыї. “ака€ практика увеличивает шансы внесени€ ошибок при модификации программы.

Ќикогда не используйте особые значени€ переменной с особым смыслом. ¬ определении параметров подпрограмм часто можно увидеть комментарии вроде такого: ЂƒЋ—“–ќ » Ц это число символов во входной строке, причем ƒЋ—“–ќ »=0 означает ошибку при вводеї. Ёто неодно≠значное употребление параметра часто приводит к двусмысленным ситуа≠ци€м и иногда затрудн€ет изменение программы. „тобы передавать код ошибки, следует определить отдельный параметр.

ѕишите модули, управл€емые таблицами. ѕри программировании модулей, реализующих сложный процесс прин€ти€ решений, эти решени€ следует описывать таблицей, а не встраивать в текст программы. Ёто со≠кращает и Ђобобщаетї программу, а также значительно облегчает модифи≠кации.

Ѕудьте осторожны с двоичной машиной. ƒвоичные машины обла≠дают тем свойством, что числа с плавающей точкой в них представл€ютс€ приближенными значени€ми. ¬ такой машине умножение 10.0 на 0.1 редко дает в результате 1.0. ѕрограммист должен остерегатьс€ этого свойства, особенно при попытке сравнивать два числа с плавающей точкой.

Ѕудьте осторожны с действи€ми над целыми. —ледует быть внима≠тельным при умножении или делении целых чисел. ≈сли I Ц целочисленна€ переменна€, то ответ на вопрос, равны ли между собой I и 2*I/2, зависит от того, четно I или нет и что в сгенерированной компил€тором программе будет выполн€тьс€ раньше: умножение или деление.

»збегайте операций со значени€ми смешанных типов. ѕрограмми≠сту не следует употребл€ть вперемешку переменные различных типов (на≠пример, двоичные, дес€тичные, плавающие) или различной точности в од≠ном выражении; компил€тор может выполнить некоторые неожиданные преобразовани€. “акие операции, как сложение строки символов с цело≠численной переменной, нельз€ делать никогда. Ќеобходима осторожность при употреблении констант, поскольку компил€тор может приписать им по умолчанию атрибуты, требующие неожиданных преобразований дан≠ных. Ќапример, следующий фрагмент на Delphi:

WinExec('"bin\tpc.exe" ' + ListBox.Items.Strings[2]);

{запуск консольного приложени€ с параметром, который написан во второй строчке листбокса}

 омпил€тор выдает ошибку на несовместимые типы String и PAnsiChar.

ƒл€ исправлени€ этой ошибки строку нужно привести к PChar:

WinExec(PChar('"bin\tpc.exe" ' +ListBox.Items.Strings[2])).

 





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2015-05-08; ћы поможем в написании ваших работ!; просмотров: 1328 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

—туденческа€ общага - это место, где мен€ научили готовить 20 блюд из макарон и 40 из доширака. ј майонез - это вообще десерт. © Ќеизвестно
==> читать все изречени€...

652 - | 576 -


© 2015-2023 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 0.009 с.