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

Циклы и функции,не могу понять как правильно написать

21.02.2020, 09:20. Показов 323. Ответов 7
Метки нет (Все метки)

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

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
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <iostream>
 
using namespace std;
 
int mod_1(int n){
    int count = 0;
    while(n > 0){
        if((n % 10) % 2 == 0){
            count += 1;
        }
        n /= 10;
    }
    return count;
}
 
int mod_2(int n){
    int count = 0;
    while(n > 0){
        if((n % 10) % 2 != 0){
            count += 1;
        }
        n /= 10;
    }
    return count;
}
 
int main(){
    int n,count_1 = 0, count_2 = 0;
    do{ cout << "Input n: ";
        cin >> n;
        if(n != 0){
            count_1 += mod_1(n);
            count_2 += mod_2(n);
        }
        cout << "even: " << count_1 << endl;
        cout << "odd: " << count_2 << endl << endl;
        count_1 = 0;
        count_2 = 0;
    }while(n > 0);
    cout<<"end";
 
    return 0;
}
Нужно еще как то учесть отрицательные числа и что б в конце просто выводило конец,а у меня когда я ввожу 0 выводит то что
0 четных 0 нечетных и конец.
хочу это убрать,но не знаю как
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.02.2020, 09:20
Ответы с готовыми решениями:

Не могу понять как написать правильно.
Не могу понять как это написать правильно. Оно даже не компилируется. #include&lt;iostream&gt;...

Не могу правильно понять какие результаты возвратят функции с логическими операторами
Добрый день! Сам программирую на С++, с Lua знаком буквально 3 дня. У меня есть пример работы...

Не могу понять как правильно описать цикл
Помогите пожалуйста. Не могу понять как правильно описать цикл. С помощью метода: Найти количество...

Не могу понять как правильно сделать объединение
Добрый день совсем недавно начал изучать join не могу сделать запрос. Сейчас я делаю запрос SELECT...

7
0 / 0 / 0
Регистрация: 28.11.2019
Сообщений: 69
21.02.2020, 09:30  [ТС] 2
понял как сделать отрицательные,но с выводом все ровно понять не могу
0
"C with Classes"
1498 / 1296 / 489
Регистрация: 16.08.2014
Сообщений: 5,442
Записей в блоге: 1
21.02.2020, 09:33 3
Цитата Сообщение от peleha Посмотреть сообщение
понял как сделать отрицательные,но с выводом все ровно понять не могу
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main(){
    
    int n {1}; 
    while(n){ 
        cout << "Input n: ";
        cin >> n;
 
        cout << "even: " << mod_1(std::abs(n) ) << endl;
        cout << "odd: " << mod_2(std::abs(n) ) << endl << endl;
    }
    cout<<"end";
 
    return 0;
}
0
6739 / 4537 / 1840
Регистрация: 07.05.2019
Сообщений: 13,725
Записей в блоге: 1
21.02.2020, 09:33 4
Цитата Сообщение от peleha Посмотреть сообщение
Нужно еще как то учесть отрицательные числа и что б в конце просто выводило конец,а у меня когда я ввожу 0 выводит то что
0 четных 0 нечетных и конец.
хочу это убрать,но не знаю как
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
size_t cnt = 0;
for (;;)
{
    cout << "Input n: ";
    cin >> n;
    if (n == 0)
        break;
 
    count_1 += mod_1(n);
    count_2 += mod_2(n);
    ++cnt;
};
 
if (cnt != 0)
{
    cout << "even: " << count_1 << endl;
    cout << "odd: " << count_2 << endl << endl;
}
 
cout<<"end";
0
57 / 42 / 15
Регистрация: 06.03.2018
Сообщений: 185
21.02.2020, 10:03 5
Цитата Сообщение от peleha Посмотреть сообщение
Нужно еще как то учесть отрицательные числа
У Вас в условии задачи последовательность ЦЕЛЫХ чисел. Зачем вам отрицательные?
0
6739 / 4537 / 1840
Регистрация: 07.05.2019
Сообщений: 13,725
Записей в блоге: 1
21.02.2020, 10:05 6
Цитата Сообщение от galeks1 Посмотреть сообщение
У Вас в условии задачи последовательность ЦЕЛЫХ чисел. Зачем вам отрицательные?
Целые числа тоже бывают отрицательными, например -1, -2 и т.д.
0
57 / 42 / 15
Регистрация: 06.03.2018
Сообщений: 185
21.02.2020, 10:11 7
Цитата Сообщение от oleg-m1973 Посмотреть сообщение
Целые числа тоже бывают отрицательными, например -1, -2 и т.д.
Ох... Да...

Что то я с утра пораньше...
0
6943 / 4707 / 2704
Регистрация: 18.12.2017
Сообщений: 14,730
21.02.2020, 14:09 8
Цитата Сообщение от peleha Посмотреть сообщение
count_1 += mod_1(n);
count_2 += mod_2(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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <iostream>
#include <iomanip>
#include <vector>
using namespace std;
 
int CountEven (int n)
{    
    int even=0;
    while (n)
    {   
        if(n%10%2==0) even++;
        n/=10;        
    }
    return even;
} 
 
int CountOdd (int n)
{    
    int odd=0;
    while (n)
    {   
        if(n%10%2!=0) odd++;
        n/=10;        
    }
    return odd;
} 
 
int main()
{
    int n;
    vector <int> v;
    
    cout << "Enter integer numbers (0 - exit):\n"; 
    while( cin >> n && n) {
        v.push_back(n);
    }
    
    cout << "         n       even       odd\n";
    for(int e : v) {
        cout << setw (10) << e << setw (10) << CountEven(e) << setw (10) << CountOdd(e) << "\n";
    }       
    
system("pause");
return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.02.2020, 14:09

Не могу понять как правильно считать строки
Задача: Задача1. «Поиск в строке» Самым популярным вопросом прошлого контеста был вопрос о...

Не могу понять как правильно сделать пример
package com.company; import java.util.Scanner; import static java.lang.Math.*; public...

Не могу понять, как правильно применить формулу Пика
Синими точками отмечены узлы клеток на границе, красные - узлы клеток внутри фигуры. По формуле...

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


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

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

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