Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
отчет1.docx
Скачиваний:
1
Добавлен:
18.11.2018
Размер:
68.22 Кб
Скачать
  1. Анализ работы по решению задачи

Общее количество прогонов программы = 123

в том числе для устранения синтаксических ошибок = 66

в том числе для устранения логических ошибок = 104

1. Файл: myio2.c, функция YesNo.

Было:

printf ( “\n%s”, text );

c = getchar ();

Стало:

printf ( “\n%s”, text );

fflush ( stdin );

c = getchar ();

2. Файл: myio2.с, функция GetNum.

Было:

printf ( “\n%s = “, query );

scanf ( “%d”, &n);

Стало:

printf ( “\n%s = “, query );

fflush ( stdin );

scanf ( “%d”, &n);

3. Файл: const.h

Было:

#define MINNUM 1 /* минимальное обрабатываемое число */

Стало:

#define MINNUM -181 /* минимальное обрабатываемое число */

4. Файл: const.h

Было:

#define MAXNUM 2000 /* максимальное обрабатываемое число */

Стало:

#define MAXNUM 181 /* максимальное обрабатываемое число */

5. Файл: const.h

Было:

#define MAXLINES 20 /* максимальное количество строк, выводимых на экран */

Стало:

#define MINLINES 1 /* минимальное количество строк, выводимых на экран */

#define MAXLINES 20 /* максимальное количество строк, выводимых на экран */

6. Файл: myio2.c, функция GetPar.

Было:

Maxnum = GetNum ( NUMBERS, MINNUM, MAXLINES );

Стало:

Maxnum = GetNum ( NUMBERS, MINLINES, MAXLINES );

27

7. Файл: const.h

Было:

#define MAXLINES 20 /* максимальное количество строк, выводимых на экран */

Стало:

#define MAXLINES 18 /* максимальное количество строк, выводимых на экран */

8. Файл: myio2.c, функция GetPar.

Было:

Maxnum = GetNum ( NUMBERS, MINLINES, MAXLINES );

Стало:

Maxnum = GetNum ( NUMBERS, MINLINES, MAXLINES );

if( Begnum + Maxnum > MAXNUM )

Maxnum = MAXNUM – Begnum + 1;

9. Файл: myio2.c, функция GetNum.

Было:

scan( “%d”, &n );

if( n < minnum )

Стало:

scan( ( “%d”, &n ) != 1 );

n = ( minnum + maxnum ) / 2;

if( n < minnum )

10. Файл: myio2.c, функция Title.

Было:

printf ( “%s”, SQUARES );

Стало:

printf ( “\n%s”, SQUARES );

11. Файл myio2.c, функция GetNum.

Было:

printf ( “%s”, query );

Стало:

printf ( “\n%s = ”, query );

12.Файл: myio2.c, функция YesNo.

Было:

printf ( “\n%s”, msg );

Стало:

printf ( “\n%s[Y/N]? ”, msg );

13.Файл text2.c

Было:

char *SQUARES = "\n Integer squares output";

char *STARTNUM = "\n The first number";

char *NUMBERS = "\n The amount of numbers";

char *FINAL = "The work is finished!";

char *QUERY = "Repeat";

char *OUTMSG = "\n Number = %3d, its square = %5d";

#else

char *SQUARES = "\n Вывод квадратов целых чисел";

char *STARTNUM = "\n Начальное число";

char *NUMBERS = "\n Количество чисел";

char *FINAL = "Работа закончена!";

char *QUERY = "Повторить";

char *OUTMSG = "\nЧисло = %3d, его квадрат = %5d";

Стало:

char *SQUARES = "Integer squares output";

char *STARTNUM = "The first number";

char *NUMBERS = "The amount of numbers";

char *FINAL = "The work is finished!";

char *QUERY = "Repeat";

char *OUTMSG = "\nNumber = %3d, its square = %5d";

#else

char *SQUARES = "Вывод квадратов целых чисел";

char *STARTNUM = "Начальное число";

char *NUMBERS = "Количество чисел";

char *FINAL = "Работа закончена!";

char *QUERY = "Повторить";

char *OUTMSG = "\nЧисло = %3d, его квадрат = %5d";

14. Файл: calc2.c, функция Calc.

Было:

int i;

for ( i = 0; i < Maxnum; i++ )

printf ( OUTMSG, Begnum + i, (Begnum + i)*(Begnum - i) );

Стало:

{

int i, k;

for ( i = 0; i < Maxnum; i++ )

{

k = Begnum + i;

printf ( OUTMSG, k, k*k );

}

}

15. Файл: myio2.c, функция YesNo.

Было:

int YesNo ( char *query )

{

char c;

Стало:

int YesNo ( char *query )

{

int c;

в том числе для тестирования = 115

Общее количество строк исходного текста программы = 295

в том числе строк только с комментариями = 137

Размер исполняемого модуля (sq2.exe), байт =