муля15
09.02.2022 07:59

40 решить на c с использование только библиотеки stdio.h

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Скотч7Рулит
07.02.2020 10:21
Procedure GetAB(x: integer; var a: integer; var b: integer);
begin
    a := 0;
    b := 1;
    while x > 0 do
    begin
        a := a + 1;
        b := b * (x mod 100);
        x := x div 100;
    end;
end;

var
    x, a, b: integer;

begin
    for x := 10000 to 2000000000 do
    begin
        GetAB(x, a, b);
        if (a = 3) and (b = 18) then
            Println(a, b, x);
    end;
end.

выдает такие значения
3 18 10118
3 18 10209
3 18 10306
3 18 10603
3 18 10902
3 18 11801
3 18 20109
3 18 20303
3 18 20901
3 18 30106
3 18 30203
3 18 30302
3 18 30601
3 18 60103
3 18 60301
3 18 90102
3 18 90201
3 18 180101

Выделенное наибольшее
0,0(0 оценок)
Ответ:
TimGoPro
12.07.2022 20:50

USES CRT;

VAR m1,m2,n,n1,n2,n3,n4,n5,n6,s1,s2:LongInt;

BEGIN

ClrScr;

     ReadLn(n);

  m1:=n;

   n1:=m1 div 100;

   n2:=m1 mod 10;

   n3:=(m1-n1*100-n2) div 10;

 if n1=n2 then if n1=n3 then writeln('vse =');

 if n1=n2 then writeln('1 i 3 =');

 if n2=n3 then writeln('2 i 3 =');

 if n1=n3 then writeln('1 i 2 =')

 else writeln('<>');

 END.

Проверяйте, что непонятно - спрашивайте.

Можно чуть поправить вывод, чтобы когда vse =, не вылезали 1 i 3, 1 i 2, 2 i 3.

Да и вообще writeln'ов можно наставить и переменные назвать покрасивше. но это уж вы сами, думаю, справитесь. В VAR у меня тоже есть лишние переменные, переделывал старый свой код наспех =)

Всего хорошего.

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота