Экзаменационная программа по курсу «Информационные технологии» (ЭР -11-17 - 12) 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Экзаменационная программа по курсу «Информационные технологии» (ЭР -11-17 - 12)



Экзаменационная программа по курсу «Информационные технологии» (ЭР -11-17 - 12)

1. Алгоритм – свойства, базовые структуры, блок-схема, псевдокод, запись на языке С++.

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

Арифметические операции (основные, префиксные, постфиксные, сложные операции присваивания, приоритет). Арифметические выражения (операнды, порядок вычисления, тип результата.)

Тип данных char - это целочисленный тип данных, который используется для представления символов. То есть, каждому символу соответствует определённое число из диапазона [0;255]. Тип данных char также ещё называют символьным типом данных, так как графическое представление символов в С++ возможно благодаря char

Int - Целочисленные типы данных используются для представления чисел

 

В С++ существуют два типа данных с плавающей точкой: float и doudle. Типы данных с плавающей точкой предназначены для хранения чисел с плавающей точкой. Типы данных float и double могут хранить как положительные, так и отрицательные числа с плавающей точкой. У типа данных float размер занимаемой памяти в два раза меньше, чем у типа данных double, а значит и диапазон принимаемых значений тоже меньше.

Unsigned зможность отриц значения

Думаю, понятно, для чего нужны арифметические операции, арифметика в программирование намного проще чем в математике. Нас интересуют следующие арифметические операции в C++:

+ - сложение; sum

- - вычитание; razn

* - умножение; pow

/ - деление; div

% - остаток от деления.

sqrt(x) Корень из х  
exp(x) Экспоненциальная функция eв степениx  
pow(x,y) x в степени y  
log(x) логарифм натуральный х (по основанию е)  
log10(x) логарифм десятичныйх (по основанию е)  
fabs(x) абсолютное значениех (для чисел с плавающей точкой с запятой)  
abs(x) абсолютное значениех (для целочисленных значений)  

 

Sin(x)

Cos(x)

Tan(x)

Asin(x)

Acos(x)

Для использования математических функций необходимо подключить заголовочный файл “math.h”, в котором находятся все выше перечисленные функции. Заголовочный файл подключается в начале программы с помощью директивы

#include “имя_заголовочного_файла.h”

cout — вывод

 

 

Оператор условного перехода.

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

  if(<условие>) <действие>;

В этом случае если условие выполняется, то программа совершит некоторое действие. Например:

  if(a == 2) cout << a;

Что если мы захотим при невыполнении основного условия сделать что-нибудь другое? Для этого используется структура if(); else;

  if(a == 2) cout << a; else cout << 0;

А что если при невыполнении первого условия нам нужно проверять еще что-то? Приведем пример из жизни. Если на улице солнечно то мы можем одеть футболку. А если нет? То мы еще должны посмотреть на улице просто пасмурно, или идет дождь, или может даже снег. Для подобных ситуаций в программировании мы можем использовать структуру
if(); else if(); else;

 

  if(a > 100) cout << 3; else if(a > 50) cout << 2; else if(a >= 0) cout << 1; else cout << 0;

Динамические переменные.

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

Пример описания целой переменной с именем а и вещественной переменной х:

int a; float x;

Общий вид оператора описания переменных:

[класс памяти] [const] тип имя [инициализатор];

Рассмотрим правила задания составных частей этого оператора.

  • Необязательный класс памяти может принимать одно из значений auto, extern, static и register. О них рассказывается чуть ниже.
  • Модификатор const показывает, что значение переменной изменять нельзя. Такую переменную называют именованной константой, или просто константой.
  • При описании можно присвоить переменной начальное значение, это называется инициализацией. Инициализатор можно записывать в двух формах — со знаком равенства: = значение или в круглых скобках: (значение)

Структура файла проекта

Для каждого приложения C++ Builder создается один файл проекта, один make-файл и один файл ресурсов. Файл проекта генерируется при выборе пункта меню File/New Application. Первоначально файлу проекта присваивается по умолчанию имя Project1.cpp. Если в процессе разработки приложения добавляются формы и модули, C++ Builder обновляет файл проекта.

Для просмотра файла проекта следует выбрать пункт меню View/Project Source. Эта операция выполнит загрузку исходного текста файла проекта в редактор кода (рис. 1).

Файл проекта имеет такую же структуру, как и файл модуля. Подобно файлу модуля, это файл исходного кода на языке C++, который компилируется с другими файлами при создании исполняемого файла.

В файле проекта имеется определенный набор ключевых элементов:

  • Директива препроцессора #include <vcl\vcl.h> предназначена для включения в текст проекта заголовочного файла, ссылающегося на описания классов библиотеки компонентов.
  • Директива препроцессора #pragma hrdstop предназначена для ограничения списка заголовочных файлов, доступных для предварительной компиляции.
  • Директива USEFORM сообщает, какие модули и формы используются в проекте.
  • директива USERES компилятора присоединяет файлы ресурсов к выполняемому файлу. При создании проекта автоматически создается файл ресурсов с расширением *.res для хранения курсоров, пиктограммы приложения и др.
  • Application->Initialize() Это утверждение критично только в случае, если приложение является OLE automation-сервером. В остальных случаях оно фактически ничего не делает.
  • Application->CreateForm() Это утверждение создает форму приложения. По умолчанию, каждая форма в приложении имеет свое утверждение CreateForm.
  • Application->Run() Это утверждение запускает приложение (точнее, переводит его в состояние ожидания наступления одного из событий, на которое оно должно реагировать).
  • Конструкция try...catch используется для корректного завершения приложения в случае возникновения ошибки при инициализации, создании форм, запуске приложения.

Структура модуля

Модули являются основой создания библиотек и приложений в C++ Builder. Модуль содержит исходный текст на языке C++ и первоначально представляет собой файл с расширением *.CPP. В дальнейшем каждый такой файл компилируется в объектный файл с расширением *.OBJ. Объектные файлы, в свою очередь, собираются компоновщиком в выполняемый файл с расширением *.EXE.

При добавлении к проекту новой формы генерируется новый модуль. При добавлении модуля к проекту при помощи выбора пункта меню File/New Unit создается пустая структура модуля, в которой включены директивы: #include <vcl\vcl.h>; #pragma hdrstop; #include "Unit2.h"

Директива #include "Unit2.h" указывает на то, что в текст модуля должен быть включен соответствующий заголовочный файл.

При создании модуля используются следующие правила:

  • Имя должно быть уникальным. Два модуля с одним и тем же именем не могут использоваться одновременно в одном и том же проекте.
  • Если модуль связан с формой, то имя исходного файла модуля и файла формы (с расширением *.dfm) должны быть одинаковыми. При создании обработчика событий в инспекторе объектов в тексте файла модуля генерируется шаблон функции, в который разработчик должен вводить код, выполняемый при наступлении обрабатываемого события.

Структура h-файла

h-файл генерируется при создании нового модуля. В нем содержится информация о данных и функциях, которые можно использовать в модуле. h-файл для модуля, связанного с формой, содержит описания интерфейсных элементов и других компонентов этой формы и обработчиков событий для них (то есть, в терминологии объектно-ориентированного программирования, описание класса формы). Такие описания автоматически добавляются в h-файл при внесении в форму новых компонентов или генерации новых обработчиков событий. Иными словами, в h-файле содержится интерфейс, а в самом модуле - реализация.

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

Не рекомендуется удалять из модуля пустые функции (например, случайно созданные шаблоны обработчиков событий). Они не увеличат размер исполняемого файла, но их удаление может привести к невозможности заново сгенерировать обработчик события, если в этом возникнет необходимость.

Отметим, что в модуле могут содержаться функции, не описанные в h-файле, однако видимость их в этом случае ограничивается данным модулем.

Внутри модуля функции могут быть определены и ссылаться друг на друга в произвольном порядке. Если данный модуль ссылается на другие формы и модули, следует с помощью директивы препроцессора #include включить в него соответствующий h-файл с помощью пункта меню File/Include Unit Hdr.... После этого интерфейсные элементы другого модуля будут доступны в данном модуле.

Функции. Прототипы функций.

Функция - это группа операторов у которой есть имя. Во всех предыдущих уроках, код наших программ располагался в одной функции - main. Функции позволяют разбить программу на небольшие части, каждая из которых выполняет какую-то небольшую задачу. Посмотрите на полный код морского боя (раздел - Листинги). В нём больше 500 строк кода. Без функций было бы довольно проблематично написать эту программу. В ней используется 11 функций, самая длинная из которых состоит из 50 строк кода.

Обязательными для функции являются два компонента: определение и вызовы.

Прототипом функции в языке Си или C++ называется объявление функции,, но указывает имя функции, арность, типы аргументов и возвращаемый тип данных. В то время как определение функции описывает, что именно делает функция, прототип функции может восприниматься как описание её интерфейса.

В прототипе имена аргументов являются необязательными, тем не менее, необходимо указывать тип вместе со всеми модификаторами (например, указатель ли это или константный аргумент).

Понятие функции

Реальные программы состоят из тысяч, десятков тысяч и, даже миллионов строк кода. Чтобы легче было управлять этим кодом используют функции. Функции это модули в С/С++. Обычно программы пишутся объединяя множество таких модулей (функций), которые могут быть описаны в разных заголовочных файлах. Так, например, в лабораторной работе № 2 вы уже использовали математические функции. Для их использования нужно было подключить заголовочный файл math.h, так как все математические функции описаны в этом файле. Математические функции были разработаны программистами Microsoft, кроме математических функций также есть функции для работы со строками, с вводом и выводом и многим другим.

Для более быстрого понимания функций

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

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

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

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

  #include <iostream>

 

  #include <math.h>

 

  using namespace std;

 

   

 

  int my_pow(int, int); //прототип функции my_pow

 

   

 

  void main()

 

  {

 

  float x;

 

  float y;

 

  float Res = 0;

 

  float My_Res = 0;

 

  cout << "Enter x = ";

 

  cin >> x;

 

  cout << "Enter y = ";

 

  cin >> y;

 

  Res = pow(x, y);

 

  cout << "Res = " << Res << endl;

 

  My_Res = my_pow(x, y); //Вызов функции my_pow

 

  cout << "My_Res = " << My_Res << endl;

 

  }

 

   

 

  int my_pow(float x, float y)//Реализация функции my_pow

 

  {

 

  int r = 1; //Тело функции my_pow

 

  for(int i = 0; i < y; i++)

 

  r = r * x;

 

  return r;

 

  }

Функции типа void.

функция для обозначения которой использовано служебное слово void это функция от которой не требуется возвращать какое то значени

Экзаменационная программа по курсу «Информационные технологии» (ЭР -11-17 - 12)

1. Алгоритм – свойства, базовые структуры, блок-схема, псевдокод, запись на языке С++.

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



Поделиться:


Последнее изменение этой страницы: 2017-01-26; просмотров: 131; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.222.10.9 (0.035 с.)