Определить являются ли цифры действительного числа симметричными относительно точки - C (СИ)
Формулировка задачи:
Перевести с паскаля в Си
Условия:
16. Определить являются ли цифры действительного числа симметричными относительно точки
Вот код
var
s: string;
i,f: byte;
begin
writeln('Введіть число цілу та дробову частину через .');
readln(s);
f := 0;
for i := 1 to length(s) div 2 do
if s[i] <> s[length(s)-i+1] then begin
writeln(' Не симетричні ');
f := 1;
break
end;
if f = 0 then
write('Симетричні');
readln
end.:Решение задачи: «Определить являются ли цифры действительного числа симметричными относительно точки»
textual
Листинг программы
#include "iostream"
using namespace std;
int main(void)
{
setlocale(LC_ALL,"ukr");
char str[100];
cout << "Введiть число цiлу та дробову частину через ";
cin >> str;
int len = strlen(str);
int f = 0;
for(int i = 0; i<len/2; ++i)
if(str[i]!=str[len-i-1])
f = 1;
if(f == 1)
cout << "Не симетричнi";
else
cout << "Симетричнi";
cin >> str;
return 0;
}
Объяснение кода листинга программы
В этом коде:
- #include
iostream— подключается стандартный файл ввода/вывода. - using namespace std; — вводимый код использует пространство имен std, поэтому мы его подключаем.
- int main(void) — функция main(), в которой находится точка входа в программу.
- setlocale(LC_ALL,
ukr) — устанавливается локаль для вывода с использованием Ukrainian локали. - char str[100]; — создается массив типа char на 100 символов, который будет использоваться для ввода строки.
- cout <<
Введiть число цiлу та дробову частину через; — выводится приглашение для ввода целой и дробной части числа. - cin >> str; — происходит ввод строки в массив str с помощью оператора >>.
- int len = strlen(str); — определяется длина строки в переменной len.
- int f = 0; — создается переменная f типа int, которая будет использоваться для проверки симметрии.
- for(int i = 0; i<len/2; ++i) — начинается цикл for, который будет проходить по половине строки (от 0 до len/2).
- if(str[i]!=str[len-i-1]) — проверяется, являются ли символы str[i] и str[len-i-1] разными.
- f = 1; — если символы разные, то переменной f присваивается значение 1.
- if(f == 1) — проверяется, равна ли переменная f единице.
- cout <<
Не симетричнi; — если условие в предыдущем пункте выполняется, то выводится сообщениеНе симетричнi. - else — иначе.
- cout <<
Симетричнi; — выводится сообщениеСиметричнi. - cin >> str; — происходит ввод строки в массив str с помощью оператора >>.
- return 0; — функция main() возвращает 0, что означает успешный конец работы программы. В результате, программа запрашивает у пользователя ввод числа, затем проверяет, является ли оно симметричным, и выводит соответствующее сообщение.