Загрузка...

Помогите с реализацией ТЗ

Тема в разделе C# создана пользователем нексюша 28 мар 2024. 210 просмотров

Загрузка...
  1. нексюша
    нексюша Автор темы 28 мар 2024 я проснулся,почистил свои зубы,заказал еды,поцеловал тебя в губы 2703 20 июн 2020
    ТЗ: Найти сумму всех нечетных цифр четырехзначного числа, заданного пользователем.
    Проблема в том, что не знаю как именно просуммировать нечётные числа, поделил число на цифры, записал условие, а дальше не могу сделать ничего

    CSHARP
    using System;

    namespace vtoroe_zadanie
    {
    class Program
    {
    static void Main(string[] args)
    {
    Console.Title = "Практическая работа №11, задание №2";
    Console.Write("Введите четырехзначное число: ");
    int N = Convert.ToInt32(Console.ReadLine());
    int A = N / 1000;
    int B = (N % 1000) / 100;
    int C = (N % 100) / 10;
    int D = N % 10;
    {
    if (N>999 && N<10000)
    {
    if (A % 2 != 0 || B % 2 != 0 || C % 2 != 0 || D % 2 != 0)
    Console.Write($"Сумма: {A+B+C+D} ");
    }
    }
    }
    }
    }
     
  2. 0w0
    0w0 28 мар 2024 0x5F3759DF 332 27 дек 2017
    Подели, а дальше циклом пройдись по ним. Может, в массив записать, а дальше циклом с условием (деление на 2) суммируй в переменную для суммы
     
    28 мар 2024 Изменено
  3. bylex
    bylex 28 мар 2024 Безделье - это игрушка дьявола 2936 7 апр 2019
    CSHARP
    public static class Program
    {
    public static void Main()
    {
    int N = int.Parse(Console.ReadLine());
    int sum = 0;
    while (N > 0)
    {
    sum += ((N % 10) % 2) == 1? N % 10 : 0;
    N /= 10 ;
    }
    Console.WriteLine(sum);
    }
    }
     
    28 мар 2024 Изменено
    1. нексюша Автор темы
      bylex, к сожалению, без этой штуки надо, т.к по программе не было этого :finger_down:
  4. vtlstolyarov
    vtlstolyarov 28 мар 2024 474 8 янв 2022
    Если подправить твоё решение то так:
    CSHARP
    using System;

    namespace vtoroe_zadanie
    {
    class Program
    {
    static void Main(string[] args)
    {
    Console.Title = "Практическая работа №11, задание №2";
    Console.Write("Введите четырехзначное число: ");
    int N = Convert.ToInt32(Console.ReadLine());
    int A = N / 1000;
    int B = (N % 1000) / 100;
    int C = (N % 100) / 10;
    int D = N % 10;
    {
    if (N>999 && N<10000)
    {
    int S = 0;
    if (A % 2 != 0) S += A;
    if (B % 2 != 0) S += B;
    if (C % 2 != 0) S += C;
    if (D % 2 != 0) S += D;
    Console.Write($"Сумма: {S} ");
    }
    }
    }
    }
    }
    но лучше так:
    CSHARP
    using System;

    namespace vtoroe_zadanie
    {
    class Program
    {
    static void Main(string[] args)
    {
    Console.Title = "Практическая работа №11, задание №2";
    Console.Write("Введите четырехзначное число: ");
    int N = Convert.ToInt32(Console.ReadLine());
    if (N>999 && N<10000)
    {
    int S = 0;
    while (N > 0)
    {
    int R = N % 10;
    if (R % 2 != 0) S += R;
    N /= 10;
    }
    Console.Write($"Сумма: {S} ");
    }
    }
    }
    }
     
    1. нексюша Автор темы
      vtlstolyarov, а нахуя н>0, мб я тюбик, но вайлом не пользовался еще
  5. vtlstolyarov
    vtlstolyarov 29 мар 2024 474 8 янв 2022
    Ты тюбик, потому что цикл должен когда-то закончится (тогда когда больше не останется цифр в числе, то есть число будет равно нулю)
     
  6. KWoslo
    KWoslo 10 апр 2024 1 29 янв 2018
    CSHARP
    using System;

    namespace vtoroe_zadanie {
    class Program {
    static void Main(string[] args) {
    Console.Title = "Практическая работа №11, задание №2";
    Console.Write("Введите четырехзначное число: ");
    string N = Console.ReadLine();
    int sum = 0;
    foreach (char c in N) {
    int x = Convert.ToInt32(c.ToString());
    if (x % 2 == 1) {
    sum += x;
    }
    }
    Console.Write($"Сумма: {sum} ");
    }
    }
    }
     
Top