Рейтинг@Mail.ru
Menu
Скачать картинки на телефон бесплатно.
Заставки для телефона, аватарки.
(Вырезать из фотографии)

Роза `Гренд Могул` Яхта `Алиса` Лесное озеро Музей `Пирогово` Белочка
Выберите рубрику (тему)

Использование управляющих конструкций

Программирование на C и C++
Программа 2

Цель работы

Получение навычек работы с основными управляющими конструкциями С.

Натуральное число называется полиндромом, если его запись читается одинаково с начала и из конца (например, 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/?id=121 */
    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();
}

Print

Печатать текст программы!



Source code: «Использование управляющих конструкций».

Редактировать, копировать

(WYSIWYG редактор «NicEdit»)
Загрузить файл с текстом программы: «Использование управляющих конструкций». Печатать текст программы!

Загрузить файл с текстом программы

(Prg2.c - Windows-1251)

Результат работы программы


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[i] = b[i])==0)
      break;

6)

Оператор продолжения continue

передает управление на начало ближайшего внешнего оператора цикла switch, while, do или for, и вызывает начало следующей итерации.

7)

Оператор возвращения return

. Перерывает выполнение текущей функции и возвращает управление программе, которая ее вызвала.


Дата: 2008-03-01   Автор: Admin
Случайный анекдот

Объявление в Интернете: Куплю винчестер. Жёсткие диски не предлагать!
Дата: 27-11-2004   Автор: Admin   Подрубрика: Железо