Similar presentations:
ЯП - Лекция1
1.
«Языки, технологии и методыпрограммирования»
Лекция + Практика 1
Преподаватель:
канд. техн. наук, доцент каф. ВТ и ЗИ
Селиванова Марина Валерьевна
e-mail: [email protected]
2.
Структура курса. Балльнорейтинговая система оцениванияЗанятия
Отчетность
Лекции (16)
Мини-опросы
Практика (7)
• Возможность выполнить задание у
доски;
• Контрольные работы
• Домашние задания
Выполнить и защитить работу в срок
(если защищать Л/Р на том же занятии,
когда она выполнялась то отчет не
нужен)
Лабораторные
работы (7)
2
3. Изучаемые языки программирования
I семестрС++
II семестр
С#
4. История развития языков программирования
5. Основные этапы разработки программ
1 этап: Постановка решаемой задачи и выбор методарешения (математическое описание алгоритма)
2 этап: Определение и описание входных и выходных
данных, необходимых для решения задач.
З этап: Разработка алгоритма решения задач.
4 этап: Кодирование описания данных и алгоритма
(разработка кода на языке программирования).
5 этап: Отладка и тестирование программы для
выявления логических ошибок.
6 этап: Выполнение и поддержка программы (создание
новых версий для устранения выявленных
ошибок и добавления функционала).
6. Интегрированная среда разработки (IDE - Integrated Development Environment)
IDE – совокупность инструментов дляразработки и тестирования приложений.
7.
Среда программирования – любая,поддерживающая язык С++
Visual Studio (любая версия);
Code::Blocks;
Dev C++;
Sublime;
QTStudio;
Online-компилятор С++ (даже для смартфона).
7
8. Создание проекта в Visual Studio
9. Виды пользовательского интерфейса, в разрабатываемых приложениях
Интерфейс команднойстроки (Command Line
Interface или CLI) –
консольные приложения
Графический
пользовательский
интерфейс (Graphical User
Interface или GUI)
10.
Выбор типа проекта10
11. Исходный вид программы
Директива подключениябиблиотечных файлов
Главная функция
программы main()
Вывод строки на экран
Комментарии
11
12. Отладка и запуск на исполнение
1213. Результат работы программы
1314.
Общие правилаБольшие и маленькие буквы различаются (main,
Main, MAIN, mAin – разные имена)
После каждого оператора ставится точка с
запятой “;”
Комментарии бывают многострочные
/* Этот комментарий может состоять
из нескольких строк
*/
и однострочные
// вся оставшаяся часть строки - комментарий
14
15. Специальные символы
СимволыНаименование
Назначение
{}
Фигурные скобки
Обозначают
составной оператор
(блок операторов)
()
Круглые скобки
Используются при
описании функций
[]
Квадратные скобки
Используются при
работе с массивами
‘‘
Одинарные кавычки
(апострофы)
Ограничивают символ
""
Двойные кавычки
Ограничивают строку
символов
16. Стиль программирования
Хороший стиль программирования облегчаетчтение программы и помогает предотвратить
ошибки.
Хороший стиль
Плохой стиль
int_y_=_x_*_5_+_3;
x_+=_10;
cout_<<_x_<<_endl;
int y=x*5+3;
x+=10;
cout<<x<<endl;
if (x < 0)
{
x += 10;
cout << x << endl;
}
if (x < 0)
{
x += 10;
cout << x << endl; }
17.
Базовые типы данных в С++Базовые
типы данных
Символьный
char
Числовые
Вещественные
(с плавающей
точкой)
Целочисленный
int
Логический
float
bool
double
18. Модификаторы типов данных
В языке C++ некоторые базовые типы данных могутбыть изменены с помощью одного или нескольких
модификаторов типа.
Модификаторы
типов данных
Наличие знака
signed
(со знаком)
unsigned
(без знака)
Объем памяти
short
(уменьшение)
long
(увеличение)
19.
Типы данных с модификаторами(32-разрядная адресация)
20. Представление целых чисел в памяти ЭВМ
Целое число в памяти ЭВМ хранится ввиде своего двоичного кода.
Пример.
21. Представление вещественных чисел в памяти ЭВМ
Вещественные данные всегда хранятся со знакомв виде мантиссы (вещественное значение от 0 до 1)
и порядка (целое число со знаком).
мантисса
порядок
22. Представление вещественных чисел в памяти ЭВМ
Тип float (32 бита – одинарная точность)числа
Тип double (64 бита – двойная точность)
23.
Тип данных voidМножество значений этого типа пусто
Используется для определения функций,
которые не возвращают значение и для
указания пустого списка аргументов
функции.
23
24.
Объявление переменной[const] тип имя [инициализатор];
int x, t;
int y = 0;
bool flag = true;
double z = 2.17, r = 0.5;
const float pi = 3.1415926;
char ch, a = '0';
24
25. Таблица кодировки символов ASCII (American Standard Code for Information Interchange )
26.
Управляющие последовательности(escape-последовательности)
26
27.
Основная программаПрограмма на языке С++ – это набор функций.
Выполнение программы начинается с функции
main().
… // <директивы препроцессора>
int main()
{
… // <операторы>
return 0;
}
27
28. Операторы ввода и вывода в С++
Ввод и выводданных
Язык С
Библиотека
stdio.h
Язык С++
Библиотека
iostream
Функция ввода
данных scanf()
◄Консольный ввод
Оператор ввода
данных cin
Функция вывода
данных printf()
◄ Консольный вывод
Оператор вывода
данных cout
cin – console input
cout – console output
29.
Подключение библиотек#include <iostream>
using namespace std;
Библиотека с
функциями
ввода/вывода
int main()
Подключение
стандартного
{
пространства имен
cout << "2+";
cout << "2=?\n";
cout << "Ответ: 4";
cin.get();
Ожидание нажатия
return 0;
любой клавиши
}
29
30. Без подключения пространства имён
#include <iostream>// using namespace std;
int main()
пространство имен
std
{
std::cout << "2+";
std::cout << "2=?\n";
std::cout << "Ответ: 4";
std::cin.get();
return 0;
}
30
31. Оператор ввода значений cin (требуется библиотека iostream)
cin >> k;cin >> a >> b;
Ввод данных с клавиатуры при работе программы:
через «пробел»:
25 30
через «Enter»:
25
30
25 a
30 b
25 a
30 b
31
32. Вывод данных в консоль cout (требуется библиотека iostream)
cout << a;//вывод значения переменной a
end of line –
конец строки
cout << a << ‘\n’ << endl;
//...и 2 перехода на новую строку
cout << “Привет!\n”;
//вывод текста
cout << “Ответ: ” << c << endl;
//вывод текста и значения переменной c
cout << a << “+” << b << ‘=’ << c;
2+3=5
32
33. Форматирование вывода
! Целая и дробная части вещественногочисла разделяются точкой этой
float x = 123.456;
cout.precision(5);//до конца программы
// или до следующего вызова этой функции
cout.width(10); //действует 1 раз
cout << x << endl;
5 знаков всего (без учета десятичной точки), т.е. 2 значащих
знака после точки
123.46
всего 10 знаков
33
34. Ввод/вывод кириллицы
3435. Арифметические выражения
c b 5 3 1a
d
2
3
1
2
4
5
6
a = (c + b * 5 * 3 - 1) / 2 * d;
Приоритет:
1) скобки
2) умножение и деление
3) сложение и вычитание
35
36.
Особенности деленияРезультат деления целого на целое – целое число
(остаток отбрасывается):
int a = 3, b = 4;
float x;
x = 3 / 4;
// = 0
x = 3.0 / 4; // = 0.75
x = 3 / 4.0; // = 0.75
x = a / b;
// = 0
x = (float)(a)/ b; // = 0.75
x = (1.0 * a)/ b; // = 0.75
36
37.
Определение остатка отцелочисленного деления (%)
int a, b, d;
d = 195;
b = d / 10;
a = d % 10;
d = a % b;
d = b % a;
// 195 / 10 = 19
// 195 % 10 = 5
// 5 % 19 = 5
// 19 % 5 = 4
37
38. Библиотека математических функций
#include <math.h>подключение
математической
библиотеки
abs(x) — модуль целого числа
fabs(x) — модуль вещественного числа
sqrt(x) — квадратный корень
sin(x) — синус угла, заданного в радианах
cos(x) — косинус угла, заданного в радианах
exp(x) — экспонента ех
ln(x)
— натуральный логарифм
pow(x,y) — xy: возведение числа x в степень y
floor(x) — округление в меньшую сторону
ceil(x) — округление в большую сторону
float x, y;
x = floor(1.6);// 1
x = ceil(1.6); // 2
x = floor(-1.6);//-2
x = ceil(-1.6); //-1
y = abs(x);
38
39.
Появились вопросы?Задавайте!!!
39