Нужно перевести из си++ в си, не совсем понимаю как выглядит строка в си cout<<"2 цифра равна "<<(a/1000)%10<<"\n"; - C (СИ)
Формулировка задачи:
#include <iostream>
using namespace std;
int main()
{
setlocale (LC_ALL, "RUS");
cout<<"\t\t\tДеление числа на разряды\n\n";
int a;
cout<<"Введите пятизначное число: ";
cin>>a;
cout<<"\n";
if (a>=0&&a<=9999)
{
cout<<"Вы ввели неверное число. Число должно быть пятизначным.\n\n";
}
else {
if (a>=100000)
{
cout<<"Вы ввели неверное число. Число должно быть пятизначным.\n\n";
}
else {
cout<<"1 цифра равна "<<(a/10000)<<"\n";
cout<<"2 цифра равна "<<(a/1000)%10<<"\n";
cout<<"3 цифра равна "<<(a/100)%10<<"\n";
cout<<"4 цифра равна "<<(a/10)%10<<"\n";
cout<<"5 цифра равна "<<a%10<<"\n";
cout<<endl;
return 0;
}
}
}Решение задачи: «Нужно перевести из си++ в си, не совсем понимаю как выглядит строка в си cout<<"2 цифра равна "<<(a/1000)%10<<"\n";»
textual
Листинг программы
#include <stdio.h>
#include <locale.h>
int main(void)
{
setlocale (LC_ALL, "RUS");
puts("\t\t\tДеление числа на разряды\n");
int a;
printf("Введите пятизначное число: ");
scanf("%d", &a);
putchar('\n');
if (a >= 0 && a <= 9999)
{
puts("Вы ввели неверное число. Число должно быть пятизначным.\n");
}
else
{
if (a >= 100000)
{
puts("Вы ввели неверное число. Число должно быть пятизначным.\n");
}
else
{
printf("1 цифра равна %d\n", a/10000);
printf("2 цифра равна %d\n", (a/1000)%10);
printf("3 цифра равна %d\n", (a/100)%10);
printf("4 цифра равна %d\n", (a/10)%10);
printf("5 цифра равна %d\n\n", a%10);
}
}
return 0;
}
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Устанавливаем локаль на русский язык
- Выводим приветствие и призыв к вводу
- Просим ввести пятизначное число
- Проверяем корректность введенного числа (больше или равно 10000 и меньше 100000)
- Если число не соответствует требованиям, выводим сообщение об ошибке и завершаем программу
- Если число корректно, продолжаем выполнение программы
- Выводим первую цифру числа (a/10000)
- Выводим вторую цифру числа ((a/1000)%10)
- Выводим третью цифру числа ((a/100)%10)
- Выводим четвертую цифру числа ((a/10)%10)
- Выводим пятую цифру числа (a%10)
- Завершаем программу