→ Для вступления в общество новичков и профессионалов программирования, пожалуйста нажмите здесь ...

Форум программистов: C++, Basic, Delphi, Pascal, JavaScript
Логин: Пароль:
Запомнить?  
@Mail.ru



Начать новую тему Ответить на тему  [ 1 сообщение ] 
Использование управляющих конструкций 
Автор Сообщение
Администратор
Аватара пользователя

Регистрация: 03.11.2007
Сообщения: 559
Откуда: Украина
Специальность:

Репутация: 6 [ ? ]
Сообщение Использование управляющих конструкций
Цель работы: Получение навычек работы с основными управляющими конструкциями С.

Натуральное число называется полиндромом, если его запись читается одинаково с начала и из конца (например, 4884, 393, 1). Найти все числа-полиндромы, что не превышают 100, и при возведении в квадрат также дают полиндром.

Описание переменных
x int Счетчик цикла
x1 int Число, которое проверяется
x2 int Квадрат числа
y1 int x записанное в обратном порядке
y2 int x2 записанное в обратном порядке

Алгоритм в виде диаграммы действий

Текст программы
#include <stdio.h>
#include <math.h>
#include <conio.h>
#define n 100
void main()
{
/* http://nataliya.kiev.ua */
for(int x=1; x<= n ; x++)
{ int x1=x;
int x2=pow(x,2);
int y1=0;
int y2=0;
while (x2!=0)
{
y2=y2*10+x2%10;
x2/=10;
if (x1!=0)
{
y1=y1*10+x1%10;
x1/=10;
} ;
}
if (x==y1 && pow(x,2)==y2)
printf("x=%d; x^2=%d\n",x, int(pow(x,2)));
} ;
getch();
}
Результат работы программы
x=1; x^2=1
x=2; x^2=4
x=3; x^2=9
x=11; x^2=121
x=22; x^2=484
Теория к программе
В языке программирования С используются следующие управляющие конструкции:

1) Цикл for
for (выражение1; выражение2; выражение3)
{оператор}
Выражение1 описывает инициализацию цикла; выражение2 - проверяет условие завершения цикла, если он истинный то выполняется оператор; выражение3 - исчисляется после каждой итерации. Цикл повторяется до тех пор, пока выражение не станет ошибочному.
Например:

for(x=1; x<=7; x++)
printf("%d\n", power(x, 2));

2) Цикл while:
while (выражение)
оператор
Если выражение есть истина, то оператор выполняется до тех пор, пока выражение не станет ошибочным. Если выражение ошибочное с самого начала, то управление передается следующему оператору. При этом цикл не выполняется совсем. Значение выражения определяется до выполнения оператора.
Например:

while (k<n) {
y=y*x; k++;
}

3) Цикл do-while. Его синтаксис:

do
оператор
while(выражение);
Если выражение истинное, то оператор выполняется и снова исчисляется значение выражения. Это повторяется, пока выражение не станет ошибочному. Оператор выполняется не меньше одного раза .
Например:

x=1;
do
printf("%d\n", power(x, 2));
while(++x<=7);

Оператор do-while проверяет условие после выполнения операторов цикла.
Оператор while проверяет условие перед выполнением операторов цикла.
4) Переключатель switch имеет синтаксис:

switch (выражение) {
case константа1: оператор
case константа2: оператор
case константа3: оператор
...
default: оператор
}

Сравнивает значение выражения с константами во всех вариантах case и передает управление оператору, который отвечает значению выражения. Если ни одна из констант не отвечает значению выражения, тогда управления передается оператору с меткой default. Если метка default отсутствующая, не выполняется никаких действий.
Например:

switch(x)
case 2:
case: y=3;

5) Оператор break перерывает выполнение ближайшего вложенного внешнего оператора switch, while, do или for. Управления передается следующему оператору.
Например:

for(i=0; i<n; i++)
if((a = b[i])==0)
break;

6) Оператор продолжения continue передает управление на начало ближайшего внешнего оператора цикла switch, while, do или for, и вызывает начало следующей итерации.
7) Оператор возвращения return. Перерывает выполнение текущей функции и возвращает управление программе, которая ее вызвала.

[i]


11.11.2007 18:34
Профиль ICQ
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 


Кто сейчас на конференции

Зарегистрированные пользователи: Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
cron
© 2013 «Форум программистов Украины»