4628

Элементарные программы на С/C++

Книга

Информатика, кибернетика и программирование

Почему СИ/СИ++ Си - компилирующий язык программирования. Иными словами, это набор ключевых слов и функций, представленных словами, которые перед выполнением их компьютером должны быть переведены в двоичные коды. За последние годы популярность Си рез...

Русский

2012-11-23

186 KB

34 чел.

Почему СИ/СИ++

Си - компилирующий язык программирования. Иными словами, это набор ключевых слов и функций, представленных словами, которые перед выполнением их компьютером должны быть переведены в двоичные коды. За последние годы популярность Си резко возросла, что, прежде всего, обусловлено следующими причинами.

Во-первых, Си является языком наиболее близким к ассемблеру, так как многие инструкции Си адресованы непосредственно к аппаратной части компьютера. Большинство компиляторов Си генерируют высоко оптимизированные коды. Компьютеру необходимы двоичные коды, чем меньше этих кодов генерирует компилятор, тем более оптимизированным является код и тем быстрее работает программа. Программы на Си четко структурированы, а это способствует их легкому проектированию, отладке и поддержке. Кроме того, программы, написанные на Си в стандарте версии 3.1, поддерживают программируемые IBM PC-совместимые контроллеры.

Структура программы в Си

Программа, составленная на языке Си, может содержать одну или больше функций. Функцией называется ряд последовательных инструкций, говорящих компьютеру, как выполнить определенную задачу. Многие функции, которые могут понадобиться, уже написаны, откомпилированы и помещены в библиотеки, т.е. в этом случае достаточно просто указать компилятору одну из стандартных функций. Собственную функцию следует создавать, когда нет необходимой в библиотеке.

Все программы на Си (и Си++) должны начинаться с функции, называемой "main()". Круглые скобки являются частью имени функции и ставить их надо обязательно, так как именно они указывают компилятору, что имеется ввиду функция, а не просто английское слово "main". Следом за "main()" вводятся инструкции. Инструкции могут быть представлены в виде стандартных команд и имен функций, содержащихся в библиотеках или написанных вами самостоятельно. Прямая, или открывающая фигурная скобка "{" помещается перед первой инструкцией, а обратная, или закрывающая фигурная скобка "}" следует за последней инструкцией. Таким образом, простейшая программа, написанная на языке Си, такова:

main() Функция, означающая начало программы - точку входа.

{  Здесь начинается функция.

……;

……; Здесь помещаются инструкции, подлежащие выполнению.

……;

}  Здесь функция заканчивается.

Открывающая и закрывающая фигурные скобки называются ограничителями и служат для выделения кода в единый блок. Кроме того, отдельные блоки внутри функции также могут отмечаться при помощи своих собственных пар фигурных скобок.

Инструкция "return"

Что происходит после того, как компьютер заканчивает выполнение инструкций, заданных в вашей программе ? Программа завершается и компьютер возвращается в исходное состояние, т.е. если программа выполнялась из операционной системы MS-DOS, на дисплее вновь появится ее подсказка, если же программа выполнялась из операционной системы Windows, то вы вновь возвратитесь в ее среду.

Возврат в исходную среду, как правило, осуществляется автоматически. Исключение составляют отдельные компиляторы языка Си, которые требуют, чтобы вы явно указывали каждый шаг, включая возврат в систему. Для таких компиляторов вводится инструкция "return(0)" или "return 0", которую помещают непосредственно перед фигурной скобкой, завершающей тело функции "main()":

main()

{

puts("У тебя все в порядке"); функция для вывода последовательности

символов,     заключенных     в    кавычки .

return 0;

}

Таким образом, инструкция "return" указывает компьютеру, что необходимо вернуться назад в исходную среду.

Директива "#include"

Если Вы пишете программу, которая требует использования дисковых файлов или вывода информации на принтер, вам необходимо включить файл заголовков "STDIO.H". Это подключение выглядит так:

#include <stdio.h>

main()

{

puts("Ok");

return 0;

}

Директива "#include" указывает компилятору на то, что он должен использовать информацию, содержащуюся в файле заголовков "STDIO.H". Сокращение "stdio" установлено для стандартного ввода/вывода (standart input/output). Файл "STDIO.H" содержит инструкции, необходимые компилятору для работы с дисковыми файлами или принтером. С помощью директивы "#include" могут подключаться и другие файлы заголовков, обеспечивающие работу математических функций, графических функций, обслуживания работы модулей ввода/вывода и т.п.

Где содержатся файлы заголовков ?  Символы, окружающие имя файла заголовков ("<" и ">"), указывают компилятору, что данный файл может находиться в каталоге "include". Так называется каталог, куда при инсталляции компилятора помещаются файлы заголовков. Если во время компиляции файл заголовков не будет найден в текущем каталоге, компилятор будет искать его в каталоге "include". Вы можете также заключить имя файла заголовка в кавычки "  #include "stdio.h"  ", но тогда компилятор будет искать его только в текущем каталоге и если не обнаружит, выдаст сообщение об ошибке.

Лабораторная работа № 1

Расчеты числовых выражений

Что нужно делать ? Получить у преподавателя вариант задания, подлежащего выполнению. Проанализировать математическое содержание каждого из трех примеров полученного задания. Найти описание аналогичной программы и ознакомиться с ним. Составить программы решения каждого из трех предложенных в задании примеров, при необходимости используя литературу по языку Си/Си++. Ввести поочередно полученные программы в ЭВМ и получить ответ.

Аналоги решения задач

  1.  Расчет арифметического выражения

Пусть необходимо составить программу для расчета выражения:

  .

Программа будет иметь следующий вид:

/*1*/ #include <stdio.h>

/*2*/ #include <conio.h>

/*3*/ main()

/*4*/ {

/*5*/  clrscr();

/*6*/  float A = 0.0;

/*7*/  A=(152.0+3.0/4.0-148.0-3.0/8.0)*0.3/0.2;

/*8*/  printf("A = %f",A);

/*9*/  return 0;

/*10*/ }

В результате выполнения этой программы на экране монитора появится: А=6.5625.

Информация, которая заключена между символами /*…….*/ называется комментарием, она не воспринимается компилятором Си и вводится исключительно для удобства пользователя. В данном случае мы воспользовались комментарием для обозначения номера строки программы.

Итак, в 1 и 2 строке программы расположены директивы подключения стандартных функций Си. В 3 строке расположена стандартная функция main(), с которой начинается любая программа на Си, т.е. эта функция означает начало программы. Фигурная скобка, расположенная в 4 строке, собственно означает начало описания функции main и соответственно фигурная скобка в 10 строке означает завершение описания функции main и всей программы в целом. Строки, расположенные между фигурными скобками, это инструкции, которые должен выполнить компьютер. В 5 строке находится функция, обеспечивающая очистку экрана монитора. В 6 строке описывается тип переменной А, использующейся в программе, и ей присваивается стартовое значение. Переменная может быть описана и другим типом данных в зависимости от того, какая роль отводится используемой переменной. В таблице 1 приведены распространенные типы описания числовых данных.

Табл. 1

Типы представления чисел

Название типа

Диапазон представления чисел

Short int

Короткие целые числа: положительные величины от 0 до 255

Int

Целые числа: величины от -32768 до +32767

Long int

Длинные целые числа: величины от -2147483648 до 2147483647

Unsigned long

Длинные целые числа без знака: положительные величины от 0 до 4294967295

Float

Величины от 3.4Е-38 до 3.4Е+38

Double

Величины от 1.7Е-308 до 1.7Е+308

Long double

Величины от 3.4Е-4932 до 1.1Е+4932

В 7 строке переменной А присвоено значение арифметического выражения. В 8 строке представлена функция вывода информации на печать. Действует эта функция таким образом: в кавычках пишется комментарий и указывается формат выводимых данных (в нашем случае это %f), а после запятой указывается какие данные необходимо вывести. В табл. 2 показано какие еще указатели формата существуют, кроме представленного в примере.

Табл. 2

Указатели формата

Обозначение

Название

%d

Целое число

%u

Беззнаковое целое число

%f

Вещественное число типа float или double

%e

Вещественное число в экспоненциальной форме

%g

Вещественное число, отображаемое по формату %f или %e, в зависимости от того, какая форма записи является более короткой

%c

Символ

%s

Строка

И последняя - девятая строчка. В этой строке находится инструкция, указывающая компилятору на необходимость вернуться в исходную среду.

  1.  Расчет значений математических функций

Предположим, необходимо написать программу расчета математической функции:

 ,

где x=3,677.

Как выглядит эта программа ? А вот как:

#include <stdio.h>                                           /*1*/

#include <conio.h>                                          /*2*/

#include <math.h>                                           /*3*/

main()                                                               /*4*/

{                                                                        /*5*/

clrscr();                                                            /*6*/

float y = 0.0, x = 3.677;                                   /*7*/

  y=2.0*pow(x,3)-5.0*pow(x,2)+7.0*x-12.0;  /*8*/

printf("y = %f",y);                                            /*9*/

return 0;                                                          /*10*/

}                                /*11*/

Комментируя данную программу, будем обращать внимание только на новые моменты. В третьей строке расположена директива подключения стандартных математических функций Си. В 7 строке описываются две переменные, используемые в программе. В 8 строке собственно записана математическая функция, значение которой нужно рассчитать. Причем здесь используется стандартная функция pow() - функция возведения в степень.

  1.  Расчет выражений, содержащих элементарные математические функции

Требуется составить программу расчета следующего выражения:

 ,

где x=2,6.

Программа расчета будет выглядеть следующим образом:

#include <stdio.h>                           /*1*/

#include <conio.h>                            /*2*/

#include <math.h>                          /*3*/

main()                                       /*4*/

{                                           /*5*/

clrscr();                                     /*6*/

float y = 0.0, x = 2.6;                   /*7*/

y=asin(sin(x))+exp(x)*(pow(x,2)-2.0*x+2.0);  /*8*/

printf("y = %f",y);                       /*9*/

return 0;                                    /*10*/

}                        /*11*/

Программа практически идентична, представленной ранее, и отличается только использованием в 8 строке дополнительных функций арксинуса - asin, синуса - sin и экспоненты - exp.

Задания к лабораторной работе № 1

Вычислить арифметическое выражение:

I-1       I-2    

I-3              I-4    

I-5      I-6    

I-7    

I-8    

I-9                  I-10    

Расчет значений математических функций

II-1    , где

II-2    , где

II-3    , где

II-4    , где    ;                  II-5    , где

II-6    , где   ;        II-7    , где

II-8    , где

II-9    , где

II-10   , где

Расчет выражений, содержащих элементарные математические функции

III-1   , где

III-2    , где

III-3    , где

III-4    , где

III-5    , где

III-6    , где

III-7    , где

III-8    , где

III-9    , где

III-10    , где

Примечание. Отчет о проделанной работе должен содержать заданные примеры и результаты их решения на компьютере. Отчет сдается преподавателю, по итогам проделанной работы проводится собеседование.

Лабораторная работа № 2

Программирование задач, содержащих циклические расчеты

с заданным числом повторений

Цель лабораторной работы - овладение методами организации циклических расчетов в Си и получение практических навыков управления компьютером.

Аналоги решения задач

  1.  Пусть требуется рассчитать следующую сумму: . Решить эту задачу можно, используя различные операторы организации цикла. Ниже приведен первый вариант решения.

#include <stdio.h> /*1*/

#include <conio.h>  /*2*/

#include <math.h>  /*3*/

main()   /*4*/

{    /*5*/

clrscr();   /*6*/

float y = 0.0, x;  /*7*/

for(x=1;x<=30;x++)  /*8*/

   y=y+1.0/x-sqrt(x);  /*9*/

printf("y = %f",y);  /*10*/

return 0;   /*11*/

}    /*12*/

В частности, здесь используется оператор организации цикла "for…", в круглых скобках компьютеру сообщается информация о переменной x (ее еще называют индексом или параметром цикла). Инструкция x=1 - указывает на присвоение начального значения переменной, инструкция x<=30 указывает, что расчет в цикле следует повторять до тех пор, пока выполняется данное условие. И последняя инструкция сообщает о приращении переменной x на единицу после каждого повтора цикла.

В данной инструкции используется оператор инкремента "++". Инкремент - это увеличение определенной переменной на единицу. Если оператор инкремента расположен слева от переменной, то ее значение увеличится на единицу еще до выполнения соответствующей инструкции. Если же оператор инкремента "++" расположен справа от переменной, то ее значение увеличится на единицу после выполнения соответствующей инструкции. Аналогичным образом действует оператор декремента "- -", только он не добавляет, а отнимает единицу.

В строке, расположенной ниже оператора организации цикла, находится инструкция, которая собственно подлежит многократному повторению, т.е. переменная y служит накопителем все время обновляющегося значения внутри скобки .

Второй вариант решения представленной выше задачи выглядит так:

#include <stdio.h>  /*1*/

#include <conio.h>  /*2*/

#include <math.h>  /*3*/

main()   /*4*/

{    /*5*/

clrscr();   /*6*/

float y = 0.0, x = 1.0;  /*7*/

do    /*8*/

  { y=y+1.0/x-sqrt(x); /*9*/

    x=x+1; }   /*10*/

while (x<=30);  /*11*/

printf("y = %f",y);  /*12*/

return 0;   /*13*/

}    /*14*/

В 7 строке данной программы вещественным переменным у и x присваиваются стартовые значения. В 8 - 11 строчках используется цикл "do…while". Структура цикла показана на рис.1. Тело цикла, если оно включает в себя более одной инструкции, заключается в фигурные скобки, что справедливо и для ранее рассматриваемого случая.

На примере нашей задачи рассмотрим третий вариант организации цикла в Си:

#include <stdio.h>  /*1*/

#include <conio.h>  /*2*/

#include <math.h>  /*3*/

main()   /*4*/

{    /*5*/

clrscr();   /*6*/

float y = 0.0, x = 1.0; /*7*/

while(x<=30)  /*8*/

  { y=y+1.0/x-sqrt(x); /*9*/

    x=x+1; }   /*10*/

printf("y = %f",y);  /*11*/

return 0;   /*12*/

}    /*14*/

Здесь используется цикл "while…". Этот цикл (рис. 2) применяется в том случае, когда не известно точное число повторов и при этом нет необходимости, чтобы цикл был выполнен хотя бы один раз. Так же, как и цикл "dowhile", цикл "while…" выполняется до тех пор, пока является истинным условие, но в отличие от упомянутого цикла условие проверяется до начала выполнения цикла, даже если цикл выполняется первый раз. Если условие окажется ложным, цикл не будет выполнен ни разу.

  1.  Вложенные циклы. Необходимо рассчитать сумму следующего вида :  .

Чтобы сделать это, нужно воспользоваться вложенными циклами так, как показано ниже:

#include <stdio.h>    /*1*/

#include <conio.h>    /*2*/

#include <math.h>    /*3*/

main()     /*4*/

{      /*5*/

clrscr();     /*6*/

int i,j,k;     /*7*/

float y = 0.0;    /*8*/

for(i=1;i<=5;i++)    /*9*/

   for(j=1;j<=10;j++)    /*10*/

      for(k=1;k<=15;k++)   /*11*/

      y=y+pow(i,2)+pow(j,2)+pow(k,2);  /*12*/

printf("y = %f",y);    /*13*/

return 0;     /*14*/

}      /*15*/

При решении данной задачи можно воспользоваться и другими способами организации циклов.

III. Заключительное задание второй лабораторной работы имеет вид текстовой задачи. Характерный пример такой задачи можно сформулировать так: требуется рассчитать сумму натуральных логарифмов чисел, кратных 6, из промежутка от 1001 до 1100. Как решать эту и подобные ей задачи ? А вот как…

#include <stdio.h>  /*1*/

#include <conio.h>  /*2*/

#include <math.h>  /*3*/

main()   /*4*/

{    /*5*/

clrscr();   /*6*/

int i;   /*7*/

float y = 0.0;  /*8*/

for(i=1001;i<=1100;i++) /*9*/

 if (i % 6 = = 0) y=y+log(i); /*10*/

printf("y = %f",y);  /*11*/

return 0;   /*12*/

}    /*14*/

В программе (строка 10) мы воспользовались оператором условия. Полная конструкция этого оператора показана на рис. 3. Оператор "if" обычно применяется тогда, когда в зависимости от истинности некоего условия необходимо решить, должна ли быть выполнена та или иная инструкция. Эту запись дословно можно перевести: "Если некоторое условие выполняется, инструкция должна быть выполнена". Когда условие не выполняется, компьютер реализует инструкции, расположенные после ключевого слова "else" (дословно переводится как "иначе"). В том случае, когда вторая часть оператора условия с ключевым словом "else"опущена, это значит, что он используется в краткой форме, а именно: если условие ложно, компьютер пропустит инструкцию, записанную после слова "if", и перейдет к следующим строчкам программы. Условие в скобках записывается с помощью операторов отношения (табл. 3).

Кроме того, в этой же 10 строке используется арифметический оператор "%", определяющий остаток от деления переменной i на 6. Таким образом, задавая условие "i % 6 = =0", мы задаем условие кратности переменной i шести.

Задание к лабораторной работе № 2

Вычислить сумму

I-1                                                     I-2    

I-3       I-4    

I-5        I-6    

I-7         I-8    

I-9        I-10    

Составить программу расчета следующей суммы

II-1                      II-2    

II-3               II-4    

II-5    

II-6    

II-7                                II-8    

II-9                           II-10    

Вычислить:

III-1 произведение чисел, кратных трем, из промежутка от 5 до 25;

III-2 произведение чисел, кратных четырем, из промежутка от 3 до 43;

III-3 произведение чисел, кратных пяти, из промежутка от 1 до 61;

III-4 произведение чисел, кратных шести, из промежутка от 4 до 91;

III-5 произведение чисел, кратных семи, из промежутка от 5 до 100;

III-6 произведение чисел, кратных восьми, из промежутка от 3 до 90;

III-7 сумму синусов чисел, кратных 12, из промежутка от 100 до 200;

III-8 сумму косинусов чисел, кратных 13, из промежутка от 200 до 300;

III-9 сумму тангенсов чисел, кратных 14, из промежутка от 300 до 400;

III-10 сумму натуральных логарифмов чисел, кратных 15, из промежутка от 400 до 500.

Лабораторная работа № 3

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

Цель лабораторной работы - получить практические навыки организации программ, содержащих логические операторы и имеющих разветвляющуюся структуру.

Аналоги решения задач

I. Пусть функция у зависит от аргумента x следующим образом:

Причем переменную x следует вводить с клавиатуры. После ввода аргумента, очевидно, необходимо выбрать по какому из трех заданных уравнений рассчитывать значение y. Эту процедуру предлагается сделать так, как продемонстрировано ниже:

#include <stdio.h>      /*1*/

#include <conio.h>      /*2*/

#include <math.h>      /*3*/

main()       /*4*/

{        /*5*/

    clrscr();       /*6*/

    float y = 0.0, x;       /*7*/

    puts("Пожалуйста, введите значение переменной x"); /*8*/

    scanf(" %f ", &x);      /*9*/

    if (x<-20) goto m10;      /*10*/

    if (x>=-20 && x<20) goto m12;     /*11*/

    if (x>20) goto m14;      /*12*/

 printf("Значение аргумента x вне области определения"); goto m22; /*13*/

m10: y=sin(cos(x)); goto m20;     /*14*/

m12: y=cos(sin(x)); goto m20;     /*15*/

m14: y=log(sqrt(x));      /*16*/

m20: printf("y = %f",y);      /*17*/

m22: return 0;       /*18*/

}        /*19*/

В 8 строке программы используется функция вывода символьной информации на экран, а в 9 строке - расположена функция ввода информации в память компьютера. Внешне ее действие сходно с функцией "printf…". В частности, в кавычках указывается формат вводимых данных, а после запятой сами данные. Символ "&" называется оператором получения адреса. Он указывает Си, что Вас в настоящий момент интересует адрес элемента памяти, где зарезервировано место для переменной, а не значение переменной, хранящейся в этом элементе.

В 10, 11, 12 строчках программы используются условные операторы, записанные в краткой форме и имеющие в своем составе операторы безусловного перехода "goto …". Назначение оператора "goto …" - указать с помощью метки, как должна развиваться программа. Например, дословно инструкцию в 10 строке можно интерпретировать так: "Если x<-20 перейти на метку m10".

Следует отметить применение в 11 строке оператора "&&", обозначающего логическое "И", т.е. условие, записанное в круглых скобках, означает, что значение x должно быть больше или равно -20 и в тоже время меньше 20. Кроме того, существуют и другие логические операторы: "ИЛИ" - "||" и "ОТРИЦАНИЕ" - "!".

Можно решить рассматриваемую задачу альтернативным способом:

#include <stdio.h>

#include <conio.h>

#include <math.h>

main()

{

    clrscr();

    float y = 0.0, x;

    puts("Пожалуйста, введите значение переменной x");

    scanf("%f", &x);

    if (x<-20) { y=sin(cos(x)); goto m10; };

    if (x>=-20 && x<20) { y=cos(sin(x)); goto m10; };

    if (x>20) { y=log(sqrt(x)); goto m10; };

    printf("Значение аргумента х вне области определения"); goto m22;

m10: printf("y = %f",y);

m22: return 0;

}

II. Следующее задание имеет много общего с предыдущим. Решим наиболее характерное: по заданным координатам точки М определить принадлежит ли она фигуре, которая задана уравнениями:

Чтобы решить эту задачу, нужно, во-первых, построить на координатной плоскости заданную фигуру (в нашем случае это квадрат). А собственно в программе необходимо осуществить ввод координат точки М, затем, используя условный оператор, логически структурировать задачу:

#include <stdio.h>

#include <conio.h>

#include <math.h>

main()

{

clrscr();

 float y , x;

puts("Пожалуйста, введите координаты x и y точки М");

 scanf("%f %f", &x,&y);

if (x<=4 && x>-4 && y<=4 && y>=-4)

   printf("Точка М принадлежит заданной фигуре");

else

   printf("Точка М не принадлежит заданной фигуре");

return 0;

}

III. Работа с одномерными массивами. Задача: в массиве, состоящем из чисел 85, 74, 90, 5, 18, 94, 35, найти максимальный элемент.

Прежде всего, необходимо сказать, что массив - это упорядоченная структура однотипных данных, хранящаяся последовательно. Массив имеет размеры, определяющие сколько элементов хранится в данной структуре. Любой элемент в массиве имеет свой индекс. Для определения массива необходимо указать типы значений, которые он содержит, и максимальное количество элементов, которое в него может быть записано. Например, для того, чтобы создать массив, содержащий 31 целое число, надо написать определение: "int mmmm[31];". Массив определяют так же, как и другие переменные, - перед main(), если хотят создать внешний массив, доступный для всех функций, и внутри main(), когда хотят определить массив, использующийся внутри этой функции. Нумерация элементов массива начинается с 0 и этим можно пользоваться. Если массив определен, в него можно вводить информацию. Начальные значения элементам массива можно присвоить при его определении: Int LLLL[7]={85, 74, 90, 5, 18, 94, 35}    .

Однако, вернемся к задаче. Ее решение можно представить в виде программы:

#include <stdio.h>

#include <conio.h>

#include <math.h>

int max,i,A[7]={85,74,90,5,18,94,35};

main()

{

clrscr(); max=A[1];

for(i=1;i<7;i++)

if (A[i]>max) max=A[i];

printf("max=%d", max);

return 0;

}

Аналогично решается обратная задача, когда требуется найти минимальный элемент массива. Единственное, что необходимо сделать - это изменить оператор отношения на противоположный в условии.

Таким образом, краткий обзор основных средств Си/Си++, необходимых для программирования простейших задач, закончен. Приступайте к работе…

Задание к лабораторной работе № 3

Составить программу расчета функции y, заданной следующим образом:

I-1      ;             I-2     ;

I-3      ;  I-4      ;

I-5  ;           I-6  ;

I-7      ;

I-8      ;

I-9     ;

I-10       .

Составить программу, которая позволит по координатам точки М определить принадлежит ли она фигуре, заданной уравнениями:

II-1    

II-2    

II-3    

II-4    

II-5    

II-6    

II-7    

II-8    

II-9    

II-10    

Найти максимальный элемент в массиве:

III-1    23, 33, 93, 54, 7, 96, 59, 58;

III-2    68, 87, 69, 93, 33, 42;

III-3    47, 20, 59, 13, 10, 17, 13, 93, 91

III-4    70, 82, 60, 92, 10, 47, 81

III-5    96, 2, 6, 53, 54, 71, 41, 70,78

Найти минимальный элемент в массиве:

III-6    3, 61, 80, 57, 16, 56, 15

III-7    60, 92, 10, 47, 81, 96, 10, 5, 2

III-8    2, 6, 53, 54, 71, 41, 70

III-9    78, 3, 61, 17, 91, 19, -14, 14

III-10    6, 49, 5, 17, 9, 5, 99, 0

Список рекомендуемой литературы

  1.  Белецкий Я. Энциклопедия языка Си / Перевод с польского канд. техн. наук А.Д. Плитмана, канд. техн. наук М.Ю. Рачкова, А.В. Стрельцова. – М.: Мир, 1992. – 686 с.
  2.  Нейбауэр А. Моя первая программа на С/C++ / Перевод с англ. Н. Мигаловская. - СПб: Питер, 1995. - 368 с.: ил.
  3.  Секреты программирования игр / А. Ла Мот, Д. Ратклифф, М. Семинаторе, Д. Тайлер // Перевод с англ. С. Сокорнова, А. Евдокимов, М. Погребняк. - СПб: Питер, 1995. - 720 с.: ил.


Do

{

}

while (condition);

instruction;

instruction;

Выполнять данные инструкции,

пока данное условие

является истинным.

ис.1. Структура цикла "do…while"

while (condition);

{

}

instruction;

instruction;

Пока является истинным это условие,

выполнять эти инструкции

Рис. 2. Структура цикла " while…"

Табл. 3

Операторы отношения  

Оператор

Значение

= =

Равно

>

Больше

<

Меньше

> =

Больше или равно

< =

Меньше или равно

! =

Не равно

if (condition);

{

}

else

{

}

instruction;

instruction;

Условие.

Инструкции, которые должны быть выполнены, если условие является истинным.

Рис. 3. Структура оператора " if "

instruction;

instruction;

Инструкции, которые должны быть выполнены, если условие является ложным.


 

А также другие работы, которые могут Вас заинтересовать

36280. Мультимедиа технология. Текстовые файлы и гипертекст. Форматы текстовых файлов. Растровая и векторная графика. Форматы графических файлов 46 KB
  Форматы текстовых файлов. Форматы графических файлов. Форматы графических файлов Форматы графических файлов отличаются способами кодировки цвета алгоритмами сжатия информации и возможностями размещения в файле дополнительной например текстовой информации. Форматов существует несколько десятков на первых этапах разработки графических программ каждый разработчик придумывал свои стандарты.
36281. Мультимедиа технология. Синтез звука. Форматы звуковых файлов 72 KB
  Синтез звука. Синтез звука Создание звука средствами электроники дело нехитрое. В отношении звуков представляющих собой комбинации тонов различной частоты была установлена плодотворная закономерность суть которой сводится к тому что для создания любого звука необходимо только найти правильную комбинацию частот В современных синтезаторах нашли широкое применение два метода: частотная модуляция и синтез с использованием таблицы форм сигналов. Синтез с вычитанием Первые настоящие музыкальные синтезаторы использовали аналоговую технологию.
36282. Мультимедиа технология. Трехмерная графика и анимация. Видео. Форматы видео файлов. Стандарты сжатия MPEG 37 KB
  Кроме того технология открытых систем позволяет работать сразу с несколькими пакетами. Можно создать модель в одном пакете разрисовать ее в другом оживить в третьем дополнить видеозаписью в четвертом. И наконец функции многих профессиональных пакетов можно сегодня расширить с помощью дополнительных приложений написанных специально для базового пакета. 3D Studio MX Один из самых известных пакетов 3Dанимации производства фирмы Kinetix.
36283. Технические средства мультимедиа. Их характеристика 83 KB
  К техническим средствам входящим в состав компьютера для обеспечения мультимедийных функций относятся: Звуковые платы Акустические системы Платы ввода вывода видеосигналов CD ROM приводы только для чтения CD дисков и CD RW приводы чтение и запись DVD приводы только чтение Сканнеры устройства считывания информации с бумажных листов фотографий и т. DVD диски Появление формата DVD ознаменовало собой переход на новый более продвинутый уровень в области хранения и использования данных звука и видео. расшифровка...
36286. HTML (HyperText Markup Language). Структура гипертекстового документа 181 KB
  Средствами HTML задаются синтаксис и размещение специальных встроенных указаний в соответствии с которыми браузер отображает содержимое документа текст графика мультимедиа гиперссылки. DHTML Dynmic HyperText Mrkup Lnguge : Клиентские сценарииJvScript и VBScript Серверные сценарии SP и PHP Технологии Jv и CGI плагин plugin приложения Другие средства Структура гипертекстового документа html hed title Заголовок HTML документа title hed body Тело HTML документа body...
36287. HTML (HyperText Markup Language). Символы комментариев 131 KB
  и знаков операций для которой можно вычислить значение. При объявлении переменной ей может быть присвоено значение. vr Strbc; Объявлена переменная Strbc vr x=7; Переменной х присвоено значение 7 При составлении сценариев JvScript можно использовать переменные без их предварительного объявления. Если prseFlot сталкивается с недопустимым символа то метод возвращает значение основанное на подстроке следующей до этого символа игнорируя все последующие.