Кафедра інформатики

Харківський національний педагогічний університет імені Г.С. Сковороди

Кафедра інформатики

Харківський національний педагогічний університет імені Г.С. Сковороди

Задача тижня 2012

Аналіз результатів тимчасово

Zadacha_tyzhnya_khopka_zadacha_tyzhnyaZadacha_tyzhnya_khopka_2_analiz_rezultativZadacha_tyzhnya_khopka_3_reytyngZadacha_tyzhnya_khopka_4_arhiv

 

Аналіз розв’язку задачі «Дужки»

 

Рішення матиме вигляд:

Введемо змінні:

V – заданий рядок;

n – ціле число, довжина рядка V;

k – ціле число, «лічильник» дужок;

R – рядок, який має значення «так» або «ні» – результат перевірки рядка V;

i – ціле число, допоміжна змінна.

початок
вводимо рядок V;
n: = довжина рядка V;
k: = 0; {встановлюємо початкове значення лічильника}
i: = 1;
поки (i ≤ n) та (k ≥ 0)
початок циклу
якщо i-символом рядка V є ‘(‘ то k:= k + 1; {збільшуємо значення лічильника на 1}
якщо i-символом рядка V є ‘)‘ то k:= k – 1; {зменшуємо значення лічильника на 1}
i:= i + 1;
кінець циклу
якщо (k дорівнює нулю) то R:=’так’ інакше R:=’ні’;
вивести рядок R на екран;

кінець.

 

Тестова таблиця за результатами роботи програми:

 

VR
1(((А)*(В-C)-D)/2)так
2(А+В*(C-D)ні
3X-((А-В)*С)+(D/(E+F))/Yтак
4А-(X/(В*С)+D/(E+F)ні
5(D+(F-(А-В)*С)+D/(E+F)))(ні
6)((А-В)*С)+(D/(E+F)))ні
7D+(F-(А-В)/F+(K))*С+(D/(E+F)ні
8D+(F-(А-В/F)+K)*С)/D/(E+F)ні
9(А+(C+B))/K-D)*(B+F/(A+B*C)ні

 

Журі оцінило надіслані розв’язки наступним чином:

 

Учасник Кількість балів
1Kolgatin Andrey4
2forsh34
3SERGEY4