Різниця#941

Різниця (Розбір)

Аналіз алгоритму

Нехай – вхідне число. Нехай – число його сотень, – число його десятків, – число одиниць. Тоді відповіддю буде значення a \times b \times c - (a + b + c).

Реалізація алгоритму

Читаємо значення , обчислюємо його модуль.

scanf("%d",&n);   
if (n < 0) n = -n;

Виділяємо з числа кількість сотень , десятків і одиниць .

a = n / 100;
b = (n / 10) % 10;
c = n % 10;

Обчислюємо і виводимо відповідь.

res = a * b * c - (a + b + c);
printf("%d\n",res);   

Реалізація з форматованим вводом

Першим символом може бути мінус, прочитаємо його. Якщо мінуса немає, то в ch нічого не прочитається.

#include <stdio.h>

int a, b, c, res;
char ch;

int main(void)
{
    scanf("%[^0-9]",&ch);
    scanf("%1d%1d%1d",&a,&b,&c);
    res = a * b * c - (a + b + c);
    printf("%d\n",res);   
    return 0;
}

Java реалізація

import java.util.*;

public class Main
{
    public static void main(String[] args)
    {
        Scanner con = new Scanner(System.in);
        int n = con.nextInt();
        if (n < 0) n = -n;
        int a = n / 100;
        int b = (n / 10) % 10;
        int c = n % 10;
        int res = a * b * c - (a + b + c);
        System.out.println(res);      
        con.close();
    }
}

Python реалізація

n = int(input())
if n < 0: n = -n

a = n // 100
b = (n // 10) % 10
c = n % 10

res = a * b * c - (a + b + c)
print(res)