Перевод кода из Pascal - C (СИ)
Формулировка задачи:
Листинг программы
- program er;
- var n,i:longint;
- function polin(n:longint):boolean;
- var i,j:longint;
- s:string;
- itog:boolean;
- begin
- itog:=true;
- str(n,s);
- if length(s)=1 then itog:=false;
- for i:=1 to length(s) do begin
- j:=length(s)-i+1;
- if s[i]<>s[j] then itog:=false; end;
- polin:=itog;
- end;
- BEGIN
- write('Введите N');
- readln(n);
- writeln('Эти числа: ');
- for i:=1 to n do
- if polin(i*i) then
- writeln(i,' (',i*i,')');
- readln;
- END.
Решение задачи: «Перевод кода из Pascal»
textual
Листинг программы
- #include<stdio.h>
- #include<stdlib.h>
- #include<string.h>
- #include<conio.h>
- int polin(int n)
- {
- int i,j;
- char s[255];
- int itog;
- itog=1;
- itoa(n,s,10);
- if(strlen(s)==1) itog=0;
- for(i=0;i<strlen(s);i++)
- {
- j=strlen(s)-i;
- if(s[i]!=s[j]) itog=0;
- }
- return itog;
- }
- int main(void)
- {
- int n,i;
- printf("%s\n","Enter N");
- scanf("%d",&n);
- printf("%s\n","The numbers are:");
- for(i=1;i<n+1;i++)
- {
- if(polin(i*i)==1) printf("%d%s%d%s\n",i," (",i*i,")");
- }
- getch();
- return 0;
- }
Объяснение кода листинга программы
- Объявление функций:
- int polin(int n);
- int main(void);
- Ввод числа n с клавиатуры:
- scanf(
%d
,&n);
- scanf(
- Вывод приглашения для ввода чисел:
- printf(
%s\n
,Enter N
);
- printf(
- Вывод сообщения
The numbers are:
:- printf(
%s\n
,The numbers are:
);
- printf(
- Цикл вывода квадратов чисел от 1 до n:
- for(i=1;i<n+1;i++)
- Проверка числа на простоту с помощью функции polin:
- if(polin(i*i)==1)
- Вывод числа i и его квадрата:
- printf(
%d%s%d%s\n
,i,(
,i*i,)
);
- printf(
- Получение числа n для выхода из программы:
- getch();
- Возврат 0 для завершения программы:
- return 0;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д