В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
pavlova62
pavlova62
10.08.2020 20:42 •  Информатика

Дан текст, содержащий цифры. вывести на экран наибольшую цифру. нужно решить в с++ , желательно с пояснениями.(решать используя строки и в стиле с)

Показать ответ
Ответ:
ттатт
ттатт
07.10.2020 23:50
#include <iostream>
/*Библиотека стандартного ввода-вывода C++ */                     
#include <string>
/*строки*/
#include <cstdio>
//Библиотека стандартного ввода-вывода C*/

using namespace std;

int main()
{
    short int maxDigit = -1;
    string str;
    printf("%s","Введите строку: ");
    cin >> str;                         
    /*Ввод строки*/
    for(int i = 0; str[i] != '\0'; i++)
    /*Цикл от начала строки до ее конца*/   
    /*('\0' - "нуль-терминатор" это символ конца строки)*/                            
    {                                         
        if((isdigit(str[i])) && (short int)(str[i]-48)>maxDigit)
        /*Если текуший символ цифра и она больше maxDigit)*/
        /*"(short int)...-48" преобразует char в short int*/           
        maxDigit = (short int)(str[i]-48);
        /*То maxDigit = этой цифре.*/  
    }   
    if(maxDigit == -1)  cout << "В строке нет цифр: " <<  "\n";   
    cout << "Наибольшая цифра: " << maxDigit << "\n";   
    /*Вывод */
    system("pause");
    return 0;
}
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота