На языке паскаля дано натуральное число 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), определяющую наименьшую и наибольшую цифры данного числа. формат входных данных задано единственное число формат выходных данных необходимо вывести наименьшую и наибольшую цифры данного числа через пробел.
162
431
Ответы на вопрос:
Сделать эту можно двумя способами. первый - чисто арифметический. второй - более хитрый, через операции над строками. мы пойдем вторым путем, он короче и практичней, такой код будет требовать меньше ресурсов машины для реализации (что незаметно в таких маленьких , но довольно критично в реальной жизни, поэтому учимся писать дальновидные коды). 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]< 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]> a then a: =s[i]; val(a,n,c); maxdigit: =n; end; begin readln(n); writeln(mindigit(n),' ',maxdigit(n)); end.по факту переменную "c" можно убрать из функций и использовать вместо нее уже не нужную в конце "i", таким образом избавившись от одной переменной. но это не принципиально на самом деле, к тому же так понятней, какая переменная за что отвечает.
Популярно: Информатика
-
axinoffdaniil21.12.2020 13:55
-
Vanek04100531.01.2021 16:31
-
Алибабо21.06.2022 18:42
-
taibovakari17.08.2021 21:52
-
Soffa611017.07.2022 23:42
-
l095862631528.11.2022 22:32
-
teorem14.01.2023 07:10
-
RASIL11113.07.2021 05:23
-
mafa09110.08.2021 04:38
-
tanea20111126.04.2022 05:32