Заданы три натуральных числа.если среди нет равных чисел, нужно записать нет если среди них есть два равных чисел то да если три равных чисел- все равны
Var a,b,c: real; begin read (a,b,c); if (a< > b) and (a< > c) and (b< > c) then writeln ('нет') else if (a=b) and (a=c) and (b=c) then writeln ('все равны') else writeln ('да'); end.
axo4937
18.06.2022
Три варианта решения: 1) var s: string; i, min: integer; begin readln(s); min : = 10; for i : = 1 to length(s) do if(strtoint(s[i]) < min) then min : = strtoint(s[i]); s : = s + inttostr(min); s : = inttostr(min) + s; writeln(s); end. 2)var a, n, i, min, tmp, m: integer; begin m : = 1; read(a); tmp : = a; n : = 0; min : = 10; while tmp > 0 do begin n : = n + 1; if(tmp mod 10 < min) then min : = tmp mod 10; tmp : = tmp div 10; end; for i : = 1 to n do m : = m * 10; a : = a + (min * m); a : = a * 10; a : = a + min; if(min=0)then write(0,a) else write(a)end.3)var a, i, min, tmp: integer; begin read(a); tmp : = a; min : = 10; while tmp > 0 do begin if(tmp mod 10 < min) then min : = tmp mod 10; tmp : = tmp div 10; end; write(min, a, min); end.
kit036
18.06.2022
Вот два варианта решения: 1)в первом варианте программа выдает неверный ответ, если в числе есть хотя бы один ноль. var a, n, i, min, tmp, m: integer; begin m : = 1; read(a); tmp : = a; n : = 0; min : = 10; while tmp > 0 do begin n : = n + 1; if(tmp mod 10 < min) then min : = tmp mod 10; tmp : = tmp div 10; end; for i : = 1 to n do m : = m * 10; a : = a + (min * m); a : = a * 10; a : = a + min; write(a); end. 2)второй вариант с использованием строки: var s: string; i, min: integer; begin readln(s); min : = 10; for i : = 1 to length(s) do if(strtoint(s[i]) < min) then min : = strtoint(s[i]); s : = s + inttostr(min); s : = inttostr(min) + s; writeln(s); end.