0 / 0 / 1
Регистрация: 08.10.2016
Сообщений: 105
1

Определить, является ли сумма максимальной и минимальной цифр числа четной

04.11.2016, 22:05. Показов 1855. Ответов 6
Метки нет (Все метки)

Здравствуйте. Как написать программу, используя цикл for? Дано натуральное число. Определить, является ли сумма его максимальной и минимальной цифр четной.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.11.2016, 22:05
Ответы с готовыми решениями:

Выяснить, является ли разность максимальной и минимальной цифр числа четной.
Выяснить, является ли разность максимальной и минимальной цифр числа четной.

Циклы. Определить является ли сумма максимальной и минимальной цифр кратной числу a.
Дано натуральное число.Определить является ли сумма его максимальной и минимальной цифр кратной...

Определить: больше ли сумма максимальной и минимальной цифры чем сумма остальных цифр числа
Дано целое число x (999 < x < 9 000 000). Определить: больше ли сумма максимальной и минимальной...

Дано натуральное число. Определить, является ли сумма его максимальной и минимальной цифр кратной числу a
Дано натуральное число. Определить, является ли сумма его максимальной и минимальной цифр кратной...

6
45 / 45 / 40
Регистрация: 31.08.2015
Сообщений: 147
04.11.2016, 22:38 2
Лучший ответ Сообщение было отмечено Maik512 как решение

Решение

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n;
    scanf("%d", &n);
    int d = n;
    int sum = 0;
    for(;n!=0;) {
            sum+=(n == d) ? d%10 : 0;
            n/=10;
            d = n % 10;
    }
    if(!(sum & 1)) printf("Chet");
    else printf("Ne chet");
}
1
198 / 176 / 110
Регистрация: 15.03.2014
Сообщений: 384
04.11.2016, 22:44 3
IVAN1234, Если ввести однозначное НЕчётное число, то максимальная и минимальная цифры совпадут. Сумма двух НЕчётных всегда равна чётному. В Вашем варианте этого не предусмотрено.
1
0 / 0 / 1
Регистрация: 08.10.2016
Сообщений: 105
04.11.2016, 22:49  [ТС] 4
Спасибо большое за ответ. Можно спросить, для чего используется ; в условии for?
0
45 / 45 / 40
Регистрация: 31.08.2015
Сообщений: 147
04.11.2016, 23:16 5
BlackSpace, тогда вот так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n;
    scanf("%d", &n);
    int d = n;
    int sum = 0;
    for(;n > 9;) {
            sum+=(n == d) ? d%10 : 0;
            n/=10;
            d = n % 10;
    }
    if(!(sum & 1)) printf("Chet");
    else printf("Ne chet");
}
Добавлено через 7 минут
BlackSpace, извеняюсь, вот так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
#include <stdlib.h>
int main()
{
    int n;
    scanf("%d", &n);
    int d = n;
    int sum = 0;
    int k = n;
    for(;n != 0;) {
            sum+=(n == d) ? d%10 : 0;
            n/=10;
            d = n % 10;
    }
    sum = (sum == k) ? sum*2:sum;
    if(!(sum & 1)) printf("Chet");
    else printf("Ne chet");
}
1
198 / 176 / 110
Регистрация: 15.03.2014
Сообщений: 384
05.11.2016, 00:11 6
IVAN1234, по последнему варианту - берём число 121. Максимальная цифра 2, минимальная 1, сумма данных цифр НЕчётная. Ваша программка выдаёт ответ, что чётная сумма.

Добавлено через 9 минут
Как вариант:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
 
int main() {
 
    int number;
    printf( "Введите число " );
    scanf( "%d", &number );
 
    // полагаем, что текущие минимальная и максимальная цифры равны последней цифре числа
    int min = number % 10;
    int max = min;
 
    // крутим цикл пока исходное число делится на 10
    for ( number /= 10; number > 0; number /= 10 ) {
 
        int current = number % 10; // считываем очередную цифру числа
 
        if ( current > max ) // если она более текущей максимальной
            max = current; // запоминаем её как текущую максимальную
        else if ( current < min ) // также с минимальной
            min = current;
    }
 
    // по окончании цикла имеем в наличии максимальную и минимальную цифры числа
 
    printf( "Сумма максимальной и минимальной цифр введённого числа является %s", // выводим сообщение
            ( ( min + max ) % 2 ? "НЕчётным числом" : "является чётным числом" ) ); // в зависимости от чётности суммы
 
    return 0;
}
1
45 / 45 / 40
Регистрация: 31.08.2015
Сообщений: 147
05.11.2016, 00:14 7
BlackSpace,Только что понял, что задачу понял не правильно, думал речь идет о разрядах.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
int main()
{
    int n;
    scanf("%d", &n);
    int d = n;
    int sum = 0;
    int max = -INT_MAX;
    int min = INT_MAX;
    for(;n != 0;) {
            if(n % 10 > max) max = n%10;
            if(n%10 < min) min = n %10;
            n/=10;
    }
    sum = max+min;
    if(!(sum & 1)) printf("Chet");
    else printf("Ne chet");
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.11.2016, 00:14

Определить, является ли разность максимальной и минимальной цифр числа четным числом
Дано натуральное число N. Определить, является ли разность его максимальной и минимальной цифр...

Определить, является ли сумма цифр двухзначного числа четной
Нужно написать программу в консольном режиме естественно, а условие следующие : Является ли сумма...

Определить является ли сумма цифр двухзначного числа четной
Написать программу, которая определяет является ли сумма цифр двухзначного числа четной.

Определить, является ли разность максимальной и минимальной цифр натурального числа чётным числом
Дано натуральное число. Определить, является ли разность его максимальной и минимальной цифр чётным...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.