Школа создателей компьютерных игр

BannerDrive.ru
[Главная] [С чего начать?] [Дистанционное обучение] [Статьи] [Обучалки] [Книги] [Софт] [Форум] [Ссылки] [О сайте]

Цикл While



Подпишитесь на рассылку "Создание компьютерных игр"

Рассылки Subscribe.Ru
Создание компьютерных игр

Рассылка выходит раз в месяц.


Понравился сайт? Узнайте, как помочь сайту.


Рекомендуемые книги


Андре Ламот.
Программирование трехмерных игр для Windows. Советы профессионала по трехмерной графике и растеризации


Андре Ламот.
Программирование игр для Windows. Советы профессионала


Проголосуйте за сайт в рейтинге GameTop!
(нажмите на кнопку рейтинга)

GameTop - рейтинг игровых ресурсов. Портал Rolemancer (www.rolemancer.ru)

Не забывайте, что результаты рейтинга обновляются раз в неделю. Пожалуйста, голосуйте почаще!


Статистика посещаемости

Rambler's Top100

Цикл For часть 2 | Все обучалки раздела | Цикл While часть 2

Описание

Объясняется, что такое цикл While, и как его использовать.

Программа выводит по порядку числа в диапазоне, задаваемом пользователем.

Скачать обучалку (Visual C++ 6)

Работа программы

Исходный код



//            - "Talk to me like I'm a 3 year old!" Programming Lessons -  
//                                                                       
//            $Author:            Ben Humphrey      digiben@gametutorials.com  
//                                                                             
//            $Program:            Counting                                    
//                                                                             
//            $Description:      Prints a given number range in a while loop   
//                                                                             
//            $Date:                  5/18/00                                  
//                                                                             


// Перевод © 2004 Евгений Казеко
// www.gamecoder.kazeko.com
// evgeniy@kazeko.com

#include <stdio.h>

// Начало нашей программы.
void main()
{
      int min=0, max=0;                                    
      // Мы инициализируем 2 целочисленные переменные, чтобы хранить в них
      // границы диапазона.  Мы устанавливаем их равными нулю, иначе в них
      // будут какие-нибудь сумасшедшие числа, например -858993460. Мы могли бы
      // также написать:
      //               int min=0;
      //               int max=0;
      // Это делает то же самое, просто такая запись более подробна.

      // Теперь мы напечатаем приглашение пользователю ввести число - нижнюю границу

      printf("Input your first number to count from: ");            
	  // "Введите число, с которого следует начать счет"

      // Затем мы ждем до тех пор, пока пользователь не нажмет <enter> и читаем
      // то, что введено, затем сохраняем это в переменной "min".
      // Мы используем "%d" потому что это значит, что мы читаем целое число.

      scanf("%d", &min);                                    
      // Видите знак "&"?  Это значит, что мы помещаем то, что введено 
      // по адресу переменной в память.
      // Вот как это работает, это довольно сложно. Сначала переменная создается, 
      // и когда мы говорим "создается", это значит, мы сообщаем windows что нам 
      // нужно определенное количество памяти системы.
      // Когда windows реагирует на это, она дает нам адрес ячейки памяти, 
      // в которой хранится информация этой переменной.
      // Всегда желательно использовать как можно меньше памяти. Для небольших 
      // программ, вроде нашей, это не существенно. Но когда у вас будут ОГРОМНЫЕ
      // проекты, это ОЧЕНЬ важно. Программы будут работать быстрее. Поверьте мне.
      // Итак, как правило мы используем НАИМЕНЬШЕЕ число переменных, для
      // того, чтобы сэкономить память.
      // Хорошего программиста можно определить по его программам: они работают
      // быстро и наиболее эффективно. Каждый старается достичь этого. Совершенству
      // нет предела.
      
      // А теперь мы выводим сообщение и просим ввести число - верхнюю границу.
      printf("Input your last number to count to: ");      
      // "Введите число, до которого нужно считать:"

      // Затем мы читаем это число.
      scanf("%d", &max);                                    


      // Здесь начинается цикл while:
      // Вы будете очень часто его использовать.
      // Цикл "While" очень похож на цикл for.
      // Вот что он делает.
      // " while ( условие истинно ) делать все что в скобках { }"
      // В нашем случае:
      // "while ( min меньше или равно max ) { напечатать значение min ,
      // а затем прибавить к min единицу }

      // Например, возьмем 5 для min и 10 для max.
      // "while ( 5 меньше или равно 10 ) и т.д....
      // Это напечатает 5, затем 6, затем 7, затем 8, затем 9, затем 10
      // (10 будет напечатано потому что 10 меньше или равно 10 )
      // Затем, когда min станет 11, 11 не <= 10, поэтому цикл остановится
      // и больше не будет исполнять то, что в скобках. Цикл завершен.
      
      while (min <= max)
      {  // Выполняется то, что в скобках до тех пор пока выражение не станет
         // ложным (FALSE) ( когда min > max).

        printf("%d\n", min);                        
        // Мы вновь используем %d потому что мы печатаем число. Наше число это min.
        // ("\n" переходит на следующую строку)

        min++;                                                
        // min увеличивается на 1. (вспомните, это то же самое, 
        // что и "min = min + 1", только короче.

       }                                                           
        // То, что в скобках выполняется до тех пор, пока выражение не станет
        // ложным (FALSE) ( когда min > max).

        // Вы можете спросить, почему бы не использовать цикл "For" вместо 
        // цикла "While"?
        // В цикле for мы указываем переменную, которая используется как счетчик
        // затем условие работы цикла, затем наращиваемое значение...
        // Здесь же можно не указывать все это
        // Мы могли бы сделать нечто вроде того, что показано слева
        //   "while(max)                        "           // Это означает " while ( max не равно 0) 
        //   "{                                 "           // { печатать значение max, отнимать 1 от max } "
        //   "    printf("%d\n", max);          "           // В результате печатается значение "max", 
        //   "        max--;                    "           // которое уменьшается до нуля.
        //   "}                                 "
        // Заметьте, что нам не всегда необходимо использовать полную
        // структуру цикла "For".  Тем не менее, мы могли бы сделать то же самое
        // с помощью него. Обычно цикл while используется когда необходимо
        // что-то повторять, пока условие истинно.
        // Цикл for используется когда количество повторений цикла известно
        // заранее.
                                                                  
}   // Конец функции "main()" и программы.

// Мы только что завершили наш первый цикл while. Если ввести 10 и 15, работа программы выглядит так:

// Input your first number to count from: <введем 10 и нажмем ENTER>
// Input your last number to count to:        <введем 15 и нажмем ENTER>
// 10
// 11
// 12
// 13
// 14
// 15
// Press any key to continue            

// © 2001 GameTutorials
// Перевод © 2004 Евгений Казеко
// www.gamecoder.kazeko.com
// evgeniy@kazeko.com

Скачать обучалку (Visual C++ 6)

Цикл For часть 2 | Все обучалки раздела | Цикл While часть 2

[Главная] [С чего начать?] [Дистанционное обучение] [Статьи] [Обучалки] [Книги] [Софт] [Форум] [Ссылки] [О сайте]

Copyright © 2003-2005 Евгений Казеко. Все права защищены. E-mail: evgeniy@kazeko.com

котлы в отоплении и строительстве , Переводы Киев - агентство переводов. , Информация стоматология химки юбилейный 50.