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

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

20.12.2022, 17:48. Показов 322. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Например, пользователь вводит число 47296514583619663
При N = 3, результат должен быть: 966

Изучаю C++ около недели, застрял на этом задании, уже 2 дня бьюсь с ним, ничего не могу придумать
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.12.2022, 17:48
Ответы с готовыми решениями:

С клавиатуры вводится длинное целое число, не менее 50 цифр. Найти сумму цифр, стоящих в середине числа
С клавиатуры вводится длинное целое число, не менее 50 цифр. Найти сумму цифр, стоящих в середине...

С клавиатуры введите длинное целое число, не менее 50 цифр. Найдите сумму цифр, стоящих в середине числа
С клавиатуры введите длинное целое число, не менее 50 цифр. Найдите сумму цифр, стоящих в середине...

С клавиатуры введите длинное целое число, не менее 50 цифр. Найдите сумму цифр, стоящих в середине числа
С клавиатуры введите длинное целое число, не менее 50 цифр. Найдите сумму цифр, стоящих в середине...

В текстовой строке найти число (слово, состоящее только из цифр), имеющее максимальное значение
Строка содержит любой набор символов не более 80. Найти и напечатать число (слово, состоящее только...

3
Заблокирован
20.12.2022, 18:07 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// 10^p
inline uint64_t int_pow10(unsigned p)
{
  uint64_t result = 1LL;
  while (p--) result *= 10LL;
  return result;
}
 
// максимальное число, состоящее из N стоящих подряд цифр числа х
uint64_t foo(uint64_t x, const unsigned char n)
{
  uint64_t factor = int_pow10(n), max = x % factor;
  while (x /= 10)
    if (x % factor > max) 
      max = x % factor;
  return max;  
}
Ахтунг! Не отлаживал, писал на заборе!
1
Модератор
Эксперт С++
13503 / 10755 / 6409
Регистрация: 18.12.2011
Сообщений: 28,706
20.12.2022, 18:16 3
Лучший ответ Сообщение было отмечено einohyperx как решение

Решение

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
#include <iostream>
#include <cstring>
using namespace std;
// функция формирует целое число не более, чем из n цифр
int number(char* t,int n)
{
    int L=strlen(t);
    if(L<n)n=L;
    int res=0;
    for(int i=0;i<n;i++)
        res=res*10+t[i]-'0';
    return res;
}
 
int main(){
    char s[]="47296514583619663";
    int N;
    cout<<"N=";
    cin>>N;
    cin.get();
    int L=strlen(s);
    int maxnum=0;
    for(int i=0;i<L-N;i++)
    {
        int t=number(s+i,N);
        if(maxnum<t)
            maxnum=t;
    }
    cout<<maxnum<<'\n';
    cin.get();
    return 0;
}
1
0 / 0 / 0
Регистрация: 17.08.2022
Сообщений: 23
23.12.2022, 20:28  [ТС] 4
Спасибо большое!
0
23.12.2022, 20:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.12.2022, 20:28
Помогаю со студенческими работами здесь

Найти максимальное число идущих подряд цифр.
Здравствуйте, уважаемые форумчане. Поступил в универ на 3 курс с колледжа. Там уже немного Джаву...

Найти в записи числа наибольшее количество подряд стоящих одинаковых цифр
Дано число n. Найти в записи числа наибольшее количество подряд стоящих одинаковых цифр. ...

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

Какое наибольшее число можно получить из цифр натурального числа, введенного с клавиатуры
какое наибольшее число, можно получить из цифр натурального числа, введенного с клавиатуры

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

Найти сумму цифр введенного с клавиатуры натурального числа
Найти сумму цифр введенного с клавиатуры натурального числа.Вывести на экран найденную сумму цифр...

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


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

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

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