Вопрос задан 04.07.2023 в 16:21. Предмет Информатика. Спрашивает Емельянова Полина.

C++ без тернарных кодов Дано натуральное число, в котором все цифры различны. Определить:а)

порядковый номер его максимальной цифры, считая номера:от конца числа;от начала числа;б) порядковый номер его минимальной цифры, считая номера:от конца числа;от начала числа.​
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Yhnivenko Veronika.

Ответ:

(a) int a, b=0,d=0,c;    

cin >> a;  

 while(a>0)

    { d++;    

    if(a%10>b)      

  {b=a%10;         c=d;}      

 a/=10;     }

cout << c << " " << d-c+1;     return 0;

(b) int a, b=10,d=0,c;  

  cin >> a;  

  while(a>0)  

 { d++;      

 if(a%10<b)      

  {b=a%10;    

   c=d;}    

   a/=10;    

} cout << c << " " << d-c+1;  

 return 0;

Объяснение:

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

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

cpp
#include <iostream> #include <string> int main() { // Ввод числа как строка std::string num_str; std::cout << "Введите натуральное число: "; std::cin >> num_str; // Инициализация максимальной и минимальной цифр, а также их порядковых номеров char max_digit = num_str[0]; char min_digit = num_str[0]; int max_index_from_end = 0; int min_index_from_end = 0; int max_index_from_start = 0; int min_index_from_start = 0; // Поиск максимальной и минимальной цифр и их порядковых номеров for (int i = 0; i < num_str.length(); ++i) { if (num_str[i] > max_digit) { max_digit = num_str[i]; max_index_from_end = i; max_index_from_start = num_str.length() - i - 1; } if (num_str[i] < min_digit) { min_digit = num_str[i]; min_index_from_end = i; min_index_from_start = num_str.length() - i - 1; } } // Вывод результатов std::cout << "Максимальная цифра: " << max_digit << std::endl; std::cout << "Порядковый номер максимальной цифры от конца: " << max_index_from_end << std::endl; std::cout << "Порядковый номер максимальной цифры от начала: " << max_index_from_start << std::endl; std::cout << "Минимальная цифра: " << min_digit << std::endl; std::cout << "Порядковый номер минимальной цифры от конца: " << min_index_from_end << std::endl; std::cout << "Порядковый номер минимальной цифры от начала: " << min_index_from_start << std::endl; return 0; }

Этот код считывает натуральное число как строку, затем перебирает все символы строки (цифры числа), находит максимальную и минимальную цифры, а также их порядковые номера от конца и начала числа, и выводит полученные результаты.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос