Задачка на языке ПаскаляДано естественное число N. Напишите функцию int MinDigit (int
Задача на языке Паскаля
Дано натуральное число N. Напишите функцию int MinDigit (int n) (C/C++), function MinDigit (n:longint):integer (Pascal) и int MaxDigit (int n) (C/C++),function MaxDigit (n:longint):integer (Pascal), определяющую меньшую и наивеличайшую числа данного числа.
Формат входных данных
Задано единственное число
Формат выходных данных
Нужно вывести наименьшую и величайшую числа данного числа через пробел.
1 ответ
Тимур Хлопиеков
Сделать эту задачку можно двумя методами. Первый - чисто арифметический. 2-ой - более коварный, через операции над строчками. Мы пойдем вторым путем, он кратче и практичней, такой код будет добиваться меньше ресурсов машины для реализации (что незначительно в таких махоньких задачах, но достаточно критично в реальной жизни, потому обучаемся писать предусмотрительные коды).
Var n:longint;
Function MinDigit(n:longint):integer;
var s,a:string; c,i:integer;
begin
str(n,s);
a:=s[1];
for i:=2 to length(s) do
if s[i]lt;a then a:=s[i];
val(a,n,c);
MinDigit:=n;
end;
Function MaxDigit(n:longint):integer;
var s,a:string; c,i:integer;
begin
str(n,s);
a:=s[1];
for i:=2 to length(s) do
if s[i]gt;a then a:=s[i];
val(a,n,c);
MaxDigit:=n;
end;
Begin
readln(n);
writeln(MinDigit(n),' ',MaxDigit(n));
End.
По факту переменную "c" можно убрать из функций и использовать вместо нее уже не подходящую в конце "i", таким образом избавившись от одной переменной. Но это не принципно на самом деле, к тому же так понятней, какая переменная за что отвечает.
Var n:longint;
Function MinDigit(n:longint):integer;
var s,a:string; c,i:integer;
begin
str(n,s);
a:=s[1];
for i:=2 to length(s) do
if s[i]lt;a then a:=s[i];
val(a,n,c);
MinDigit:=n;
end;
Function MaxDigit(n:longint):integer;
var s,a:string; c,i:integer;
begin
str(n,s);
a:=s[1];
for i:=2 to length(s) do
if s[i]gt;a then a:=s[i];
val(a,n,c);
MaxDigit:=n;
end;
Begin
readln(n);
writeln(MinDigit(n),' ',MaxDigit(n));
End.
По факту переменную "c" можно убрать из функций и использовать вместо нее уже не подходящую в конце "i", таким образом избавившись от одной переменной. Но это не принципно на самом деле, к тому же так понятней, какая переменная за что отвечает.
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
выпиши в свою тетрадь те правила этикета которые тебе не были
Разные вопросы.
Анна хорошо учится у неё много подруг свободное от учёбы время
Обществознание.
10) Килограмм конфет дороже килограмма печенья на 52 р. За 8
Математика.
Во сколько раз число атомов кислорода в земной коре больше числа
Химия.
Составить монолог от имени дневника двоечника 7-10 предложений
Русский язык.
Рассматривая литературный язык как сложное взаимодействие книжного языка и разговорного,В.И.Чернышёв горячо
Разные вопросы.
Арабы входят в __________________ групп народов. Местом расселения арабов с незапамятных
Разные вопросы.
Грузовой автомобиль марки краз за одну поездку может доставить 7.500 кирпичей
Математика.
Облако тегов