Пригодность детали оценивается по размеру В, который должен соответствовать интервалу (А – d, A + d). Определить, имеются ли в партии из N деталей бракованные. Если да, то подсчитать и выдать на экран их количество, иначе выдать отрицательный ответ — Pascal(Паскаль)

var m:set of byte;
    a,d,n,i,k,b:integer;
begin
writeln('Введите A,D');
readln(a,d);
m:=[a-d..a+d];
writeln('Введите количество деталей');
readln(n);
k:=0;
for i:=1 to n do
begin
  writeln('Размер детали ',i);
  readln(b);
  if b in m then inc(k);
end;
if k<>0 then writeln('Бракованных деталей: ',k)
else writeln('Бракованных деталей не обнаружено');
readln;
end.

Следующий вариант

uses crt;
const nmax=100;
var dt:array[1..nmax] of integer;
    n,i,k:byte;
    a,d:integer;
begin
clrscr;
repeat
write('Количество деталей до ',nmax,' n=');
readln(n);
until n in [1..nmax];
write('Введите нормальный размер детали и допустимое отклонение:');
readln(a,d);
writeln('Введите фактические размеры деталей:');
for i:=1 to n do
 begin
  write('dt[',i,']=');
  readln(dt[i]);
 end;
clrscr;
k:=0;
writeln('Размеры деталей:');
for i:=1 to n do
 begin
  write(dt[i],' ');
  if(dt[i]<a-d)or(dt[i]>a+d) then k:=k+1;
 end;
writeln;
writeln;
if k=0 then write('Бракованных деталей нет')
else write('Количество бракованных деталей=',k);
readln
end.

Leave a Comment

− 2 = 7