writeln('Выберите номер средства измерения из приведенного ниже списка');
writeln(' 1 - Линейка масштабная');
writeln(' 2 - Угольник');
writeln(' 3 - Угломер универсальный');
writeln(' 4 - Шаблон или скоба линейная односторонняя');
writeln(' 5 - Шаблон или скоба линейная двусторонняя');
writeln(' 6 - Шаблон фасонный простой');
writeln(' 7 - Шаблон линейный сложного профиля');
writeln(' 8 - Штангенциркуль');
writeln(' 9 - Микрометр');
writeln(' 10 - Индикатор с точностью 0.01мм');
writeln(' 11 - Калибр-пробка гладкая двусторонняя');
writeln(' 12 - Калибр-пробка для проверки взаимного положения оси отверстия и торца');
writeln(' 13 - Щуп.');
readln(i);
if (i=13)then
begin
writeln('Введите характер измерения');
writeln('1 - Прерывистое измерение величины зазора по прямой и кривой');
writeln(' без определения величины зазора ("проходит" или "не проходит"');
writeln('2 - Прерывистое измерение величины зазора по прямой и кривой');
writeln(' с определением величины зазора (подбор определнной пластины)');
writeln('3 - Измерение величины зазора по длине по прямой');
writeln(' без определения величины зазора ("проходит" или "не проходит"');
writeln('4 - Измерение величины зазора по длине по прямой');
writeln(' с определением величины зазора (подбор определнной пластины)');
writeln('5 - Определние величины зазора по длине по кривой');
writeln(' без определения величины зазора ("проходит" или "не проходит"');
writeln('6 - Определние величины зазора по длине по кривой');
writeln(' с определением величины зазора (подбор определнной пластины)');
readln(g);
end;
if (i=1) or (i=2) or ((i>=4) and (i<=10)) then
w:=1
else if (i=11) or (i=12) then
w:=2
else if ((i=13) and (g>2)) then
w:=3;
if (w<>0) then
begin
writeln('Введите номер, соответствующий длине измеряемой поверхности');
writeln('1 - длина измеряемой поверхности до ',L[w,1], 'мм');
writeln('2 - длина измеряемой поверхности до ',L[w,2], 'мм');
writeln('3 - длина измеряемой поверхности до ',L[w,3], 'мм');
writeln('4 - длина измеряемой поверхности до ',L[w,4], 'мм');
writeln('5 - длина измеряемой поверхности до ',L[w,5], 'мм');
writeln('6 - длина измеряемой поверхности до ',L[w,6], 'мм');
if (i<>6) then
writeln('7 - длина измеряемой поверхности до ',L[w,7], 'мм');
if ((i=13) and ((g<>1)or(g<>2))) then
writeln('8 - длина измеряемой поверхности до ',L[w,8], 'мм');
readln(K);
end;
w:=0;
if (i=3) then
w:=1
else if ((i=4) or (i=5)) then
w:=2
else if ((i=6) or (i=7)) then
w:=3
else if (i=8) then
w:=4
else if (i=13) then
w:=5;
if (w<>0) then
begin
writeln('Выберите точность измерения');
writeln('1 - точность измерения' ,TI[w,1], '');
writeln('2 - точность измерения' ,TI[w,2], '');
if (w=5) then
begin
writeln('3 - точность измерения' ,TI[w,3], '');
writeln('4 - точность измерения' ,TI[w,4], '');
end;
readln(f);
end;
w:=0;
if (i=8) then
w:=f
else if (i=9) then
w:=4
else if (i=10) then
w:=5
else if (i=11) then
w:=6
else if (i=12) then
w:=3;
if (w<>0) then
begin
writeln('Введите измеряемый размер');
writeln('1 - измеряемый размер до ' ,P[w,1],'');
writeln('2 - измеряемый размер до ' ,P[w,2],'');
writeln('3 - измеряемый размер до ' ,P[w,3],'');
if (w>3) then
begin
writeln('4 - измеряемый размер до ' ,P[w,4],'');
if ((w=5) or (w=4)) then
writeln('5 - измеряемый размер до ' ,P[w,5],'');
end;
readln (g);
end;
if (i=11) then
begin
writeln('Введите квалитет (класс точности)');
writeln('1 -', KB[1],'');
writeln('2 -', KB[2],'');
writeln('3 -', KB[3],'');
readln(f);
end;
if ((i=13) and (g<3)) then
begin
writeln('Введите число измеряемых точек');
writeln('1 - Число точек измерения - ' ,KT[1],'');
writeln('2 - Число точек измерения - ' ,KT[2],'');
writeln('3 - Число точек измерения до ' ,KT[3],'');
writeln('4 - Число точек измерения до ' ,KT[4],'');
writeln('5 - Число точек измерения до ' ,KT[5],'');
readln(q);
end;
if (i=1) or (i=2) then
T:=AA[i,K];
if (i=3) then
T:=BB[f];
if (i=4) then
T:=CC[f,K];
if (i=5) then
T:=DD[f,K];
if (i=6) then
T:=EE[f,K];
if (i=7) then
T:=FF[f,K];
if (i=8) then
begin
n:=g+(f-1)*3;
T:=GG[n,K];
end;
if (i=9) or (i=10) then
begin
n:=(i-9)*5+g;
T:=HH[n,K];
if ((i=10) and (T=0)) then
begin
writeln(b, 'Длина измеряемой поверхности при измеряемом размере до' ,P[4,1],'');
writeln(b, 'не более',L[1,4],', до ',P[4,2], '- не более',L[1,5],', до ' ,P[4,3], '');
writeln(b, 'и' ,P[4,4], '- не более',L[1,6],'');
end;
end;
if (i=11) then
begin
n:=g+(f-1)*4;
T:=LL[n,K];
if T=0 then
begin
writeln(b,'Длина измеряемой поверхности при измеряемом размере до ',P[5,1],'мм');
writeln(b,'не более ',L[2,5],'мм, до ',P[5,2],'мм и до ',P[5,3],'мм - не более ',L[2,6],'мм');
end;
end;
if (i=12) then
begin
T:=RR[g,k];
if T=0 then
begin
writeln(b,'Длина измеряемой поверхностсти ');
writeln(b,'не может превышать измеряемый размер');
end;
end;
if (i=13) then
begin
if (g=1) or (g=2) then
begin
n:=(g-1)*5+q;
T:=JJ[n,f];
end
else
begin
n:=(g-3)*8+K;
T:=QQ[n,f];
end;
end;
writeln(b,'Проверьте правильность вводимых значений');
end;
writeln(b);
writeln(b,'Время измерения равно', T);
close(b);
END.
При использовании данной программы получаем следующие результаты.
ПРИМЕР 1
Измерительный инструмент – угольник, измеряемый размер до 800
Время измерения равно 2.8000000000E-01
ПРИМЕР 2
Измерительный инструмент – индикатор, измеряемый размер до 50мм, длина измеряемой поверхности – до 1000мм.
Длина измеряемой поверхности при измеряемом размере до 50
не более 300, до 100 - не более 500, до 200
и 300 - не более 800
Проверьте правильность вводимых значений
ПРИМЕР 3
Измерительный инструмент – щуп, характер измерения – прерывистое измерение величины зазора по прямой и кривой по 8-ми точкам с определением величины зазора, точность измерения – до 0,05мм
Время измерения равно 3.4000000000E-01.
Приведенные тестовые примеры показывают, что приведенная программа позволяет определить время контрольных измерений
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.