• в паскале я написал программу что бы 3 значное число разбилось на единицы, десятки и сотни, а потом написал что бы эти 3 цифры перемножились, а он перемножает не только эти 3 цифры, но и цифры 10 и 100 которые я использовал что бы разбить число на десятки сотни и единицы, как исправить? (вот если что program qq;
    Var
    x: integer;
    a,b:real;
    begin
    readln(x);
    writeln('Разряд единиц: ', x mod 10);
    writeln('Разряд десятков: ', x mod 100 div 10);
    writeln('Разряд сотен: ', x div 100);

    a:=x+x+x;
    b:=x*x*x;
    writeln ('сумма = ',a);
    writeln ('произведение = ',b);
    end;)

Ответы 2

  • Ты просто вывел на экран разряды, но никуда их не записал. Поэтому переменная x по прежнему хранит все число. Из за этого ты просто производил действия сложения и умножения с одним и тем же числом.Что бы все заработало присвой каким-нибудь переменным, значения которые ты выводил, и проводи действия уже над ними.
    • Автор:

      foster
    • 6 лет назад
    • 0
  • Вот рабочая программа:var x,a,b,c,proiz,sum:integer;beginWriteLn('Введите 3-ех значное число');read(x);a:=x mod 10;b:= (x div 10) mod 10;c:=x div 100;sum:=a+b+c;proiz:=a*b*c;WriteLn('Произведение разрядов=', proiz);WriteLn('Сумма разрядов=', sum);end.
    • Автор:

      furyzuky
    • 6 лет назад
    • 0
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years