
- •Правило #0, про коментарі
- •Правило #1, про кількість операторів в рядку
- •1. Кількість операторів на рядку повинно бути дорівнює 1.
- •2. Слово var пишеться на окремому рядку.
- •4. Слова begin і end
- •Правило #2, про горизонтальні відступи
- •1. Намагайтеся помістити функцію в екран
- •2. Використовуйте табуляцію замість пробілів.
- •Правило #3, про операторні дужки
- •Правило № 4, про горизонтальні відступи
- •Правило #5, про вертикальні пробіли (порожні рядки)
- •Правило № 6, про оголошення змінних
- •Правило #7, про що говорять ідентифікатори
- •Правило #8, про ініціалізацію масивів
- •Правило #9, про функції/процедури
- •Правило #10, про помилки та ще дещо про що
- •Правило #11, дані про
- •Правило #12, про умову
Правило #3, про операторні дужки
Операторні дужки (це те, що обмежує складенийоператор), що відносяться до одного блоку, повинні розташовуватися наступним чином. Відкриваюча дужка повинна знаходитися на тій же позиції, що і наступний до блоку оператор, а та що закриває повинна перебувати строго на одній лінії по вертикалі з початком оператора, що передує даному складеному. Невірно: for j:=0 to N do begin WriteLn('тра--ля ля'); end; Правильно: for j:=0 to N do begin WriteLn('тра--ля ля'); end; Допускається такий варіант: for j:=0 to N do begin WriteLn('тра--ля ля'); end; Останній варіант слід використовувати для підпрограм, тобто процедур і функцій: Невірно: function MyFavoriteFunction:boolean; begin MyFavoriteFunction := TRUE; end; Правильно: function MyFavoriteFunction:boolean; begin MyFavoriteFunction := TRUE; end;
Правила 1-2-3 дотримуються майже АВТОМАТИЧНО, якщо набирати текст програми не так, як це робить людина, 2 дні тому вперше побачив клавіатуру, а так, як зараз буде сказано. Початківці зазвичай набирають текст послідовно, і тому (САМЕ ТОМУ!!!) а) він у них виходить кривий і б) вони постійно забувають закрити блок або закривають його не там, де треба. Для того, щоб уникнути витрат часу на виправлення наслідків такої забудькуватості, текст програми потрібно набирати Непослідовно. Цьому сприяє сама граматика та синтаксис майже будь-якої мови програмування. Завжди є ПАРНІ символи, дужки там усілякі, складові оператори знову ж. Якщо написали begin, то чому б не написати end? Якщо набрали відкриваючу дужку, то чому б відразу не набрати закриваючу, а потім повернутися назад? Зараз на прикладі розпишу, як треба набирати.
for (i = 0; i < N; i++) { /* тіло циклу */ }
Ось цикл. Набираємо так: набрали "for", пробіл, натиснули лівий Shift, набрали "(", відразу (!!!) за нею ")", Shift відпустили, пробіл, знову натиснули Shift, набрали "{" і знову відразу (!!!) "}", адже вона тут же, поруч на клавіатурі, тепер стрілка назад і Enter. Якщо так набирати, то Ви просто не зможете порушити правило № 3. Далі: повертаємося всередину круглих скобочек і тільки тепер починаємо думати, а за якою ж змінної ми хотіли зробити цикл. Ставимо два рази крапку з комою (можна і раніше було поставити, коли скобочки ставили) і вписуємо чого треба. Далі - End, Enter, TAB(правило #2!!!) і починаємо думати, що ми хотіли написати в тілі циклу. Якщо наберете таким чином кілька конструкцій типу for,while, repeat, if та інша й інша, то Ви будете потім дивуватися, а як ще можна набирати??? В іншому випадку Ви так і будете писати програми, які неможливо читати, так і будете безнадійно плутатися в дужках і т.д. і т.п. ...
Правило № 4, про горизонтальні відступи
Наприкінці рядка пропусків бути не повинно!!! Ну непотрібні там вони. Пропуски ОБОВ'ЯЗКОВІ після коми, як у звичайному тексті. Пропуски корисні навколо знака який небудь операції.
Невірно:
for(k=NUM;k;k--){
int tmp;
tmp=some_func(k,arg2,arg3);
printf("%d\n",tmp);
}
Правильно:
for (k = NUM; k; k--) {
int tmp;
tmp = some_func(k, arg2, arg3);
printf("%d\n", tmp);
}