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

Поступает последовательность целых положительных чисел, 0 – конец последовательности. Определить в каком из чисел больше

17.01.2018, 17:19. Показов 10242. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите написать программу...не знаю с чего даже начать...
Поступает последовательность целых положительных чисел, 0 – конец последовательности. Определить в каком из чисел больше всего цифр.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2018, 17:19
Ответы с готовыми решениями:

Вводится последовательность целых чисел,0 –конец последовательности. Определить, содержит ли последовательность хотя бы три отрицательных четных числа
Составить алгоритм решения задачи и написать программу на языке С++. В алгоритме и ...

Даны два массива из n целых чисел каждый. Определить, в каком из них больше положительных элементов.
Даны два массива из n целых чисел каждый. Определить, в каком из них больше положительных...

Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые больше заданного числа М
Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые...

Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые больше заданного числа М
Дана последовательность целых положительных чисел. Найти произведение только тех чисел, которые...

6
75 / 75 / 97
Регистрация: 21.12.2014
Сообщений: 185
17.01.2018, 17:47 2
А можно ли свести данную задачу к поиску наибольшего числа в последовательности? Или обязательно определять количество цифр в каждом числе?
0
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
17.01.2018, 17:51  [ТС] 3
Написал начало программу, функцию не могу.... помогите пожалуйста....
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
#include "stdafx.h" 
#include <iostream>  
int isNoPrime(int n); 
int _tmain(int argc, _TCHAR* argv[])
 { 
     int d, max = 1; 
     setlocale(LC_ALL, "russian");  
     printf("Введите последовательность целых положительных чисел (0– конец   последовательности)\n"); 
     do  
        {   
           scanf_s("%d", &d);   
           if (isNoPrime(d))   
               if (d < min)     
               max = d;  
         }
     while (d); 
     printf("число у которого больше цифр = %d\n", max);   
     system("pause"); 
     return 0; 
  }
int isNoPrime(int n) 
{ .
.
.
.
.
.
.
Добавлено через 1 минуту
ir24, обязательно определять количество цифр в каждом числе
0
75 / 75 / 97
Регистрация: 21.12.2014
Сообщений: 185
17.01.2018, 17:51 4
Лучший ответ Сообщение было отмечено Паск как решение

Решение

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
#include <iostream>
 
int GetNumberOfDigits(int number)
{
    int amount = 0;
    while (number > 0)
    {
        amount++;
        number /= 10;
    }
 
    return amount;
}
 
int main()
{
    int n, max = 0, result;
 
    std::cout << "Enter numbers:" << std::endl;
    while (true)
    {
        std::cin >> n;
        if (n == 0) break;
        else
        {
            int a = GetNumberOfDigits(n);
            if (a > max)
            {
                max = a;
                result = n;
            }
        }
    }
 
    std::cout << "Result: " << result << std::endl;
    system("pause");
    return 0;
}
1
1 / 1 / 0
Регистрация: 27.09.2017
Сообщений: 82
17.01.2018, 17:57  [ТС] 5
ir24, а что означает данная строчка number /= 10?
0
75 / 75 / 97
Регистрация: 21.12.2014
Сообщений: 185
17.01.2018, 18:01 6
Паск, number = number / 10 (деление на 10)
1
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,881
Записей в блоге: 1
17.01.2018, 18:03 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
#include <iostream>
#include <cstddef>
 
std::size_t Count(int i)
{
    size_t count = 0;
 
    while (i % 10 > 0)
    {
        
        i /= 10;
        ++count;
    }
 
    return count;
}
 
int main(int argc, char* argv[] )
{
    int a[] {123, 1234, 12345, 12, 1, 0, 123456, 12};
    size_t currentCount = 0, nextCount = 0;
    int result = -1;
 
    for (size_t i = 0; a[i]; ++i)
    {
        nextCount = Count(a[i] );
 
        if (currentCount < nextCount)
        {
            currentCount = nextCount;
            result = a[i];
        }
    }
 
    return 0;
}
1
17.01.2018, 18:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.01.2018, 18:03
Помогаю со студенческими работами здесь

Вводится последовательность целых чисел, 0 - конец последовательности
Вводится последовательность целых чисел, 0 - конец последовательности. Определить, содержит ли...

Дана последовательность целых чисел. 0 – конец последовательности
1) Дана последовательность целых чисел. 0 – конец последовательности. Найти произведение первого и...

с клавиатуры вводится последовательность из целых чисел, 0-конец последовательности
с клавиатуры вводится последовательность из целых чисел, 0-конец последовательности. в случае...

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru