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

2)Анализ программы с точки зрения сложности потока управления по МакКейбу:

граф программы:

L=83

V=85

P=3

Z=83-85+2*3=4

3)Анализ кода с точки зрения сложности потока данных по Чепину

.386

data segment use16

boof1(P) db 4

db ?

db 4 dup(0);под коды символов первого числа

boof2(P) db 4

db ?

db 4 dup(0);под коды симвлов второго числа

chislo1 dw ?(M)

chislo2 dw ?(M)

rez(P) db 7 dup(0),0dh,0ah,'$'

summ dw ?(M)

nad1(P) db 'ўўҐ¤ЁвҐ 1 зЁб«® $';надпись введите 1 число в dos кодировке

nad2(P) db 'ўўҐ¤ЁвҐ 2 зЁб«® $';надпись введите 2 число

nad3(P) db 'б㬬  Ї®«гзЁ« бм $';надпись сумма получилась

nad4(P) db '¤«п ўл室  ­ ¦¬ЁвҐ «оЎго Є« ўЁиг...$';надпись для выхода нажмите любую клавишу...

data(M) ends

cod(M) segment use16

assume ds:data(C), cs:cod(C)

.

.

.

P=7

M=5

C=2

T=0

Q=1*7+2*5+3*2=7+10+6=23

4)Анализ программы с точки зрения ее интеллектуальности по Холстеду:

L= = 0.02

I=0.02*85=1.7

E=592.873*log2 =7319

Ʌ=0.022*85=0.034

5)Анализ кода программы с точки зрения стилистики и коментированности:

программа разбита на 14 фрагментов начало каждого из них подразумевает пустая строчка.

F1= - 0.1

F2= - 0,1= 0.4

F3=8/8 – 0.1 = 0.9

F4=6/9 – 0.1 = 0.5

F5=1/7 – 0.1 = 0

F6=4/4 – 0.1 = 0.9

F7=2/8 – 0.1 = 0.1

F8=13/19 – 0.1 = 0.5

F9=1/10 – 0.1 = 0

F10=1/7 – 0.1 =0

F11=1/5 – 0.1 = 0.1

F12=1/10 – 0.1 = 0

F13=13/24 – 0.1 = 0.4

F=-0.1+0.4+0.9+0.5+0.9+0.1+0.5+0.1+0.4=4.1

Программа на Microsoft Visual Studio 2010 C# :

Текст программы:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace lab2_metrologia

{

class Program

{

static void Main(string[] args)

{

string chislo1;//обявляем строковые переменные

string chislo2;

int ch1;//обявляем числовые переменные

int ch2;

int summa;

Console.WriteLine("введите первое число ");//выводим на экран надпись

chislo1 = Console.ReadLine();//читаем нажатия клавиш

ch1 = Convert.ToInt32(chislo1);//конвертируем строковую переменную в числовую

Console.WriteLine("\n\n введите второе число ");

chislo2 = Console.ReadLine();

ch2 = Convert.ToInt32(chislo2);

summa = ch1 + ch2;//складываем 1 и 2 число

Console.WriteLine("\n\n сумма получилась "+summa);//выводим сумму на экран

Console.WriteLine("\n\n для выхода нажмите любую клавишу ...");//выводим на экран надпись

Console.ReadLine();//ждем нажатия любой клавиши

}

}

}

1)Анализ кода с точки зрения размера программы по Холстеду:

using System;(оператор)

using System.Collections.Generic;(оператор)

using System.Linq;(оператор)

using System.Text;(оператор)

namespace(оператор) lab2_metrologia(операнд)

{(оператор)

class(оператор) Program(операнд)

{(оператор)

static(оператор) void(оператор) Main(операнд)(string[](операнд) args(операнд))

{(оператор)

string(оператор) chislo1(операнд);//обявляем строковые переменные

string(оператор) chislo2(операнд);

int(оператор) ch1(операнд);//обявляем числовые переменные

int(оператор) ch2(операнд);

int(оператор) summa(операнд);

Console.WriteLine(оператор)("введите первое число "(операнд));//выводим на экран надпись

chislo1(операнд) = Console.ReadLine()(оператор);//читаем нажатия клавиш

ch1(операнд) = Convert.ToInt32(оператор)(chislo1(операнд));//конвертируем строковую переменную в числовую

Console.WriteLine(оператор)("\n(оператор)\n(оператор) введите второе число (операнд)");

chislo2(операнд) = Console.ReadLine()(оператор);

ch2(операнд) = Convert.ToInt32(оператор)(chislo2(операнд));

summa(операнд) = ch1(операнд) +(оператор) ch2(операнд);//складываем 1 и 2 число

Console.WriteLine(оператор)("\n(оператор)\n(оператор) сумма получилась(операнд) "+(оператор)summa(операнд));//выводим сумму на экран

Console.WriteLine(оператор)("\n(оператор)\n(оператор) для выхода нажмите любую клавишу ...(операнд)");//выводим на экран надпись

Console.ReadLine()(оператор);//ждем нажатия любой клавиши

}(оператор)

}(оператор)

}(оператор)

n1=17

n2=14

N1=36

N2=23

n=17+14=31

N=36+23=59

V=59*log231= 292.298

Ň=17*log217+14*log214= 122.79