Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 16.11.2012
Сообщений: 4

При сложении цифр любого трехзначного числа программа считает сумму четной

21.12.2012, 11:48. Показов 3422. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Почему то при сложении цифр любого трехзначного числа программа считает сумму четной.
Условие звучит так: "Сумма цифр данного трехзначного числа N является четным числом".
Мыслей больше нет. Прошу помощи.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
namespace ConsoleApplication8
{
    class Primer2
    {
        static void Main()
        {
            double a;
            Console.WriteLine("введите трехзначное число");
            a = double.Parse(Console.ReadLine());
            double a3 = a % 10;
            double a1 = a / 100;
            double b = a % 100;
            double a2 = b / 10;
            double s = a1 + a2 + a3;
            double k = s % 2;
            if (k==0)
            Console.WriteLine("true");
            else 
            Console.WriteLine("false");
            Console.ReadLine();
         }
    }
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.12.2012, 11:48
Ответы с готовыми решениями:

Будет ли сумма цифр трехзначного числа четной?
Дано трехзначное число N. Проверить, будет ли сумма его цифр четным числом.

Проверить, является ли сумма цифр трехзначного числа чётной
Сумма цифр трехзначного числа есть чётным числом. Как записать код? Подскажите, пожалуйста.

Проверить является ли сумма цифр введенного трехзначного числа четной
Сумма цифр трехзначного числа является четным числом».

12
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,870
21.12.2012, 11:57
Цитата Сообщение от Ksuni Посмотреть сообщение
double a;
Цитата Сообщение от Ksuni Посмотреть сообщение
double a3 = a % 10;
для дубли нет операции остаток от деления
0
713 / 680 / 126
Регистрация: 30.03.2012
Сообщений: 1,124
21.12.2012, 11:58
C#
1
double a1 = a / 100;
321/100=3.21
замените double на int
ВЕЗДЕ
0
 Аватар для armaged
0 / 0 / 2
Регистрация: 21.12.2012
Сообщений: 3
21.12.2012, 12:04
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int a;
            Console.WriteLine("введите трехзначное число");
            a = int.Parse(Console.ReadLine());
            int a3 = a % 10;
            int a1 = a / 100;
            int b = a % 100;
            int a2 = b / 10;
            int s = a1 + a2 + a3;
            if (s % 2 == 0)
                Console.WriteLine("true");
            else
                Console.WriteLine("false");
            Console.ReadLine();
        }
    }
}
Может так????
0
713 / 680 / 126
Регистрация: 30.03.2012
Сообщений: 1,124
21.12.2012, 12:22
Цитата Сообщение от ValeryS Посмотреть сообщение
для дубли нет операции остаток от деления
да ну?
а почему тогда эта строчка выдает 1.21?
C#
1
double q = 3.21 % 2;
0
0 / 0 / 0
Регистрация: 25.10.2011
Сообщений: 4
21.12.2012, 12:37
C#
1
2
3
4
5
6
7
8
9
10
11
12
class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Введите целое число =");
            string num = Console.ReadLine();
            int n = Convert.ToInt16(num[num.Length - 1]);
            if (n % 2 == 0) Console.WriteLine("Чет");
            else Console.WriteLine("Нечет");
            Console.ReadLine();
        }
    }
0
0 / 0 / 0
Регистрация: 16.11.2012
Сообщений: 4
21.12.2012, 12:38  [ТС]
Спасибо огромное! Все работает
0
42 / 42 / 14
Регистрация: 29.12.2010
Сообщений: 159
21.12.2012, 12:40
Nuklear, насколько я понял Ваш код проверяет чило на четность, а ТС нужно проверить СУММУ ЦИФР числа на чет-нечет!
0
0 / 0 / 0
Регистрация: 25.10.2011
Сообщений: 4
21.12.2012, 12:44
Сорри за мою невнимательность.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Введите целое первое число =");
            string num1 = Console.ReadLine();
            Console.Write("Введите второе целое число =");
            string num2 = Console.ReadLine();
            int n1 = Convert.ToInt16(num1[num1.Length - 1]);
            int n2 = Convert.ToInt16(num2[num2.Length - 1]);
            if ((n1+n2) % 2 == 0) Console.WriteLine("Чет");
            else Console.WriteLine("Нечет");
            Console.ReadLine();
        }
    }
}
0
42 / 42 / 14
Регистрация: 29.12.2010
Сообщений: 159
21.12.2012, 12:47
Nuklear, все равно не так: вводится ОДНО трехзначное число, суммируются ЦИФРЫ этого числа и уже эта сумма проверяется на четность... Ладно, проехали.
0
0 / 0 / 0
Регистрация: 25.10.2011
Сообщений: 4
21.12.2012, 12:56
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Введите целое число =");
            string num1 = Console.ReadLine();
            int sum=0;
            foreach (int x in num1)
            {
                sum += x;
            }
            
            if (sum % 2 == 0) Console.WriteLine("Чет");
            else Console.WriteLine("Нечет");
            Console.ReadLine();
        }
    }
}
Кофе, кофе, кофе
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,870
21.12.2012, 12:56
Цитата Сообщение от Tessen Посмотреть сообщение
да ну?
а почему тогда эта строчка выдает 1.21?
да потому что у дробных нет понятия остатка

Цитата Сообщение от Tessen Посмотреть сообщение
double q = 3.21 % 2;
остаток 1.21?
3.21/2=1.605?
так или нет ?
складываем 1.605*2+1.21=3.21+1.21=4.42 !!!
0
713 / 680 / 126
Регистрация: 30.03.2012
Сообщений: 1,124
21.12.2012, 13:48
боюсь msdn'у все таки виднее
а то у них бедняжек и "все числовые типы поддерживают" и даже в примерах остаток от деления 5.0 на 2.2, вот ведь ужас то и не знают что такого нет
http://msdn.microsoft.com/ru-r... e0fzs.aspx
з.ы. запустите эту строчку на выполнение
получите ответ 1.21
то что вы с ним не согласны не делает его нерабочим

Добавлено через 9 минут
Nuklear, у вас опять не получилось - в вашем коде сумма вычисляется по приведенному к int char'у, (например для цифры 3 он равен 51), не говоря уже о том что можно посчитать сумму слова а не числа

Добавлено через 2 минуты
напишите уже в 1 строку и не мучайтесь
C#
1
2
3
                Console.Write("Введите целое число =");
                Console.WriteLine(Console.ReadLine().Select(x => Convert.ToInt32(x)).Sum() % 2 == 0 ? "Чет" : "Нечет");
                Console.ReadKey();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.12.2012, 13:48
Помогаю со студенческими работами здесь

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

Проверить, является ли сумма цифр подаваемого на вход трехзначного числа четной
Доброго времени суток! Мне необходимо проверить, является ли сумма цифр подаваемого на вход трехзначного числа четной, !!! не...

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

Найти сумму всех цифр любого числа при помощи x div y и x mod y
:help: Здраствуйте! Помогите пожалуйста сделать проект в Lazarus, в котором при нажатии кнопки будет считаться сумма всех цифр любого...

Вывести сумму цифр трёхзначного числа
Задали сделать домашку: 'вывести сумму цифр трёхзначного числа'. Получилось вот что: program sumOf3; var x, y, s:integer; ...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru