М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
kositskaya80
kositskaya80
13.03.2022 08:42 •  Информатика

На языке паскаля дано натуральное число 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), определяющую наименьшую и наибольшую цифры данного числа. формат входных данных задано единственное число формат выходных данных необходимо вывести наименьшую и наибольшую цифры данного числа через пробел.

👇
Ответ:
артур644
артур644
13.03.2022
Сделать эту задачу можно двумя Первый - чисто арифметический. Второй - более хитрый, через операции над строками. Мы пойдем вторым путем, он короче и практичней, такой код будет требовать меньше ресурсов машины для реализации (что незаметно в таких маленьких задачках, но довольно критично в реальной жизни, поэтому учимся писать дальновидные коды).

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", таким образом избавившись от одной переменной. Но это не принципиально на самом деле, к тому же так понятней, какая переменная за что отвечает.
4,7(27 оценок)
Открыть все ответы
Ответ:
kamilakruvetka
kamilakruvetka
13.03.2022

1.

program z1;

var a:array [1..10] of integer;

i,k:integer;

begin

write ('Введите элементы массива через пробел и нажмите Enter ');

for i:=1 to 10 do read (a[i]);

write ('Массив: ');

for i:=1 to 10 do write (a[i],'  ');

writeln;

write ('Номера элементов больше 5: ');

for i:=1 to 10 do if a[i] > 5 then

begin

write (i,'  ');

k:=k+1

end;

writeln;

writeln ('Элементов больше 5: ',k)

end.

2.

program z2;

var s:string;

begin

readln (s);

while pos('о',s)<>0 do delete(s,pos('о',s),1);

writeln(s)

end.

Объяснение:

Смотри картинки

2. Программа удаляет только строчные русские о


НУЖНА ЗАДАЧА: Составить программу на Паскале для обработки одномерного массива из 10 элементов. Знач
НУЖНА ЗАДАЧА: Составить программу на Паскале для обработки одномерного массива из 10 элементов. Знач
4,4(36 оценок)
Ответ:
Яна00311
Яна00311
13.03.2022

1.

program z1;

var a:array [1..10] of integer;

i,k:integer;

begin

write ('Введите элементы массива через пробел и нажмите Enter ');

for i:=1 to 10 do read (a[i]);

write ('Массив: ');

for i:=1 to 10 do write (a[i],'  ');

writeln;

write ('Номера элементов больше 5: ');

for i:=1 to 10 do if a[i] > 5 then

begin

write (i,'  ');

k:=k+1

end;

writeln;

writeln ('Элементов больше 5: ',k)

end.

2.

program z2;

var s:string;

begin

readln (s);

while pos('о',s)<>0 do delete(s,pos('о',s),1);

writeln(s)

end.

Объяснение:

Смотри картинки

2. Программа удаляет только строчные русские о


НУЖНА ЗАДАЧА: Составить программу на Паскале для обработки одномерного массива из 10 элементов. Знач
НУЖНА ЗАДАЧА: Составить программу на Паскале для обработки одномерного массива из 10 элементов. Знач
4,7(69 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ