Занятие 1
Курс "Основы программирования"
План занятия
1. Языки программирования: C, JS
2. Базовые элементы программ
3. Знакомство со средой разработки
4. Hello World!
Как работает процессор?
1. Взять команду из ОЗУ.
2. Выполнить команду.
3. Перейти к следующей команде.
4. Повторить пункт 1.
• Это происходит миллиарды раз в секунду.
• Команды – примитивны, например
«копирование числа» и «увеличение числа».
MOV AX, 5 ADD AX, 3
Компилятор/Интерпретатор
• Переводит понятный человеку текст в
код, понятный процессору.
A = 5
B = 2
C = A + B
mov A, 5
mov B, 2
mov AX, A
add AX, B
mov C, AX
110101010010
010101001000
101001001001
110111010101
010111000101
110110011101
Какими бывают языки?
Декларативный
Функциональный
Логический
Императивный
Программа – функция, всё есть функция
или константа.
program( cond( >(in(‘%i’),10),
out(‘>10’), out(‘<=10’) ) )
Imperio = «приказ».
main()
{
x = in(‘%i’);
if(x > 10)
out(‘>10’);
else
out(‘<=10’);
}
Есть набор правил. Программа
выбирает подходящее.
rules:
x > 10? out(‘>10’),
x <= 10? out(‘<=10’).
goal:
x = in(‘%i’).
Описывается результат, а не то как
его достичь.
out { text: in.text > 10?
‘>10’: ’<=10’ }
Язык C
• Очень простой.
• Очень сложный.
• Очень быстрый.
• Как выстрелить себе в ногу?
• Как не выстрелить в ногу?
• Что если я уже выстрелил?
• Просто сложный.
• Гибкий и удобный.
• Интерпретируемый.
• Допускает извращения.
• Вы точно выстрелите в ногу.
• Что делать в этом случае?
Язык JS
Понятие переменной
12
Переменная – она для того чтобы её менять. Менять её значение.
• X – это имя по которому можно к ней обратиться.
• 12 – это число, которое сейчас в ней содержится.
• X = 4. Оператор ‘=’ означает положить в Х (то что справа от оператора).
• X = X + 2. Справа от ‘=’ X подразумевает значение (12), а слева – место (ту самую
коробку).
То есть факт появления Х справа от ‘=’ не влияет на содержимое коробки. А слева – наоборот.
Имя переменной выбирает программист:
• Начинается с ‘a’-‘z’ или ‘_’.
• Безразлично компьютеру.
• Помогает читать программу.
Типы переменных
Тип переменной определяет:
• Как компьютер хранит данные.
• Какие действия можно производить.
2+2 = 4, 2/2 = 1… ‘a’+‘b’ = ? , ‘a’/ ‘b’ = ?!
• Какой смысл несут данные.
Переменные в C
• Разные типы: число, строка…
• Тип указан заранее.
• Тип не может быть изменён.
 Базовые типы:
int – целое число / 11, -5, 0
float – дробное число / 3.2, -0.7
char – символ (буква) / ‘a’, ‘2’
Примеры:
• int x;
• float y = 1.0;
• Разные типы: число, строка…
• Тип не указан заранее (var).
• Тип может быть изменён.
• Определяется при ‘=’.
 Базовые типы:
число / 11, -5, 0, 3.2, -0.7
строка / ‘a’, ‘2’, ‘Суббота’, ‘a88’
объект / { x: 2, y: ‘hi!’ }
Примеры:
• var a;
• var b = 1.0;
Переменные в JS
Понятие оператора
Оператор – то, что производит операции. Например, над переменными.
Формирование выражений:
• +, -, *, / – самые очевидные арифметические операции, результат – число.
• >, <, ==, >=, <=, != – операторы сравнения, результат «да» или «нет», в виде 1 или 0.
• &&, ||, ! – логические операторы «и», «или», «не». Ответ, так же, 1 или 0.
Результат выражения вычисляется и затем может быть присвоен переменной (‘=’).
Пример: x = 4 * ( (10 + 3) < 15 + (7 * 2) != 1 ) - ( (0 || 1) + (0 && 1) ). Что в x?
Оператор присвоения
12
Из ящика y берется копия числа 3
(безымянное значение).
Старое содержимое ящика x уничтожается.
Число 3 кладется в ящик x.
В исходном ящике y по-прежнему осталось 3.
3
int x = 12;
int y = 3;
x = y;
3
Понятие программы
Компьютерная программа – последовательность инструкций,
предназначенных для исполнения устройством управления
вычислительной машины.
По сути, программа – последовательность операций, записанных с
помощью операторов.
• Операции выполняются строго по порядку.
• Кроме операций существует часть программы, объясняющая среде
откуда начать её выполнение.
Работа с C
Visual Studio
• Пишем код.
Notepad++
• Пишем код.
Visual Studio
• Компилируем.
Запускаем в ОС.
Запускаем в
интерпретаторе.
Работа с JS
Visual Studio
Notepad++
Google Chrome
Hello World! на C
1. Запускаем Visual Studio
2. Создаём новый проект (New Project)
Visual C++, Win32 Console Application
Console Application, Empty project
3. Создадим файл main.cpp
Source Files – Add – New Item, .cpp
4. Открываем созданный файл в студии.
Текст программы
#include <stdio.h>
int main()
{
printf("Hello World!");
return 0;
}
Сохраните и нажмите
кнопку Run (F5).
Hello World! на JS
1. Запускаем Notepad++.
2. Создаём файл “program.html”.
3. Открываем “program.htm” в Notepad++.
4. Открываем “program.htm” в Chrome.
5. В Chrome открываем консоль (F12)
6. Редактируем “program.htm” в Notepad++.
Текст программы
<html>
<head>
<script>
console.log('Hello World!');
</script>
</head>
<body></body>
</html> Сохраните и обновите
страницу в Chrome.
Используем переменные
Задача:
Создать переменную Х, присвоить ей значение 73. Затем
вывести результат на экран вместе со словами “Hello World!”.
Пример результата: “Hello World 73”.
Справка:
• С – printf использует форматированный
вывод: printf(“a=%i”, 21); выведет “a=21”.
• JS – поддерживается сложение строк и чисел,
например: ‘a=’+21 будет ‘a=21’.
Домашнее задание
1. Установить инструменты на домашних ПК:
• Visual Studio 2012 Express;
• Notepad++;
• Google Chrome.
2. Повторить «Hello World!» на JS и C.
3. Вычислить и вывести на экран выражение
по варианту.
Варианты, x = №
1. (x – 2) * 3 + 6 * (x + 1)2
2. x2 – 3*x + 2 * (5 – x)
3. (x + x – 1)2 / 5 – 2 * x
4. (x + 1)2 * 3 + 6 – 19
5. 3*x + 2 * (x + x – 1)
6. 5 – 2 * x + x2 – 3 * x
7. 3 + 6 * (5 – x) + (x + 1)2
8. 2 * x + x2 – 9 – 7 * x
9. (x – 1) * 4 + 8 * (x – 6)2
10.x2 / (2*x) + 11 * (5 – x)
11.(x – x + 2)2 * 15 – 2 * x
12.(x / 4)2 * (3 + 6 * x) – 99
13.3*x + 2 * (x + x – 1)
14.5 – 2 * x + x2 – 3 * x
15.4 + 8 / (x – 16)2 + x2

1 вводное занятие

  • 1.
    Занятие 1 Курс "Основыпрограммирования"
  • 2.
    План занятия 1. Языкипрограммирования: C, JS 2. Базовые элементы программ 3. Знакомство со средой разработки 4. Hello World!
  • 3.
    Как работает процессор? 1.Взять команду из ОЗУ. 2. Выполнить команду. 3. Перейти к следующей команде. 4. Повторить пункт 1. • Это происходит миллиарды раз в секунду. • Команды – примитивны, например «копирование числа» и «увеличение числа». MOV AX, 5 ADD AX, 3
  • 4.
    Компилятор/Интерпретатор • Переводит понятныйчеловеку текст в код, понятный процессору. A = 5 B = 2 C = A + B mov A, 5 mov B, 2 mov AX, A add AX, B mov C, AX 110101010010 010101001000 101001001001 110111010101 010111000101 110110011101
  • 5.
    Какими бывают языки? Декларативный Функциональный Логический Императивный Программа– функция, всё есть функция или константа. program( cond( >(in(‘%i’),10), out(‘>10’), out(‘<=10’) ) ) Imperio = «приказ». main() { x = in(‘%i’); if(x > 10) out(‘>10’); else out(‘<=10’); } Есть набор правил. Программа выбирает подходящее. rules: x > 10? out(‘>10’), x <= 10? out(‘<=10’). goal: x = in(‘%i’). Описывается результат, а не то как его достичь. out { text: in.text > 10? ‘>10’: ’<=10’ }
  • 6.
    Язык C • Оченьпростой. • Очень сложный. • Очень быстрый. • Как выстрелить себе в ногу? • Как не выстрелить в ногу? • Что если я уже выстрелил? • Просто сложный. • Гибкий и удобный. • Интерпретируемый. • Допускает извращения. • Вы точно выстрелите в ногу. • Что делать в этом случае? Язык JS
  • 7.
    Понятие переменной 12 Переменная –она для того чтобы её менять. Менять её значение. • X – это имя по которому можно к ней обратиться. • 12 – это число, которое сейчас в ней содержится. • X = 4. Оператор ‘=’ означает положить в Х (то что справа от оператора). • X = X + 2. Справа от ‘=’ X подразумевает значение (12), а слева – место (ту самую коробку). То есть факт появления Х справа от ‘=’ не влияет на содержимое коробки. А слева – наоборот. Имя переменной выбирает программист: • Начинается с ‘a’-‘z’ или ‘_’. • Безразлично компьютеру. • Помогает читать программу.
  • 8.
    Типы переменных Тип переменнойопределяет: • Как компьютер хранит данные. • Какие действия можно производить. 2+2 = 4, 2/2 = 1… ‘a’+‘b’ = ? , ‘a’/ ‘b’ = ?! • Какой смысл несут данные.
  • 9.
    Переменные в C •Разные типы: число, строка… • Тип указан заранее. • Тип не может быть изменён.  Базовые типы: int – целое число / 11, -5, 0 float – дробное число / 3.2, -0.7 char – символ (буква) / ‘a’, ‘2’ Примеры: • int x; • float y = 1.0; • Разные типы: число, строка… • Тип не указан заранее (var). • Тип может быть изменён. • Определяется при ‘=’.  Базовые типы: число / 11, -5, 0, 3.2, -0.7 строка / ‘a’, ‘2’, ‘Суббота’, ‘a88’ объект / { x: 2, y: ‘hi!’ } Примеры: • var a; • var b = 1.0; Переменные в JS
  • 10.
    Понятие оператора Оператор –то, что производит операции. Например, над переменными. Формирование выражений: • +, -, *, / – самые очевидные арифметические операции, результат – число. • >, <, ==, >=, <=, != – операторы сравнения, результат «да» или «нет», в виде 1 или 0. • &&, ||, ! – логические операторы «и», «или», «не». Ответ, так же, 1 или 0. Результат выражения вычисляется и затем может быть присвоен переменной (‘=’). Пример: x = 4 * ( (10 + 3) < 15 + (7 * 2) != 1 ) - ( (0 || 1) + (0 && 1) ). Что в x?
  • 11.
    Оператор присвоения 12 Из ящикаy берется копия числа 3 (безымянное значение). Старое содержимое ящика x уничтожается. Число 3 кладется в ящик x. В исходном ящике y по-прежнему осталось 3. 3 int x = 12; int y = 3; x = y; 3
  • 12.
    Понятие программы Компьютерная программа– последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины. По сути, программа – последовательность операций, записанных с помощью операторов. • Операции выполняются строго по порядку. • Кроме операций существует часть программы, объясняющая среде откуда начать её выполнение.
  • 13.
    Работа с C VisualStudio • Пишем код. Notepad++ • Пишем код. Visual Studio • Компилируем. Запускаем в ОС. Запускаем в интерпретаторе. Работа с JS
  • 14.
  • 15.
  • 16.
  • 17.
    Hello World! наC 1. Запускаем Visual Studio 2. Создаём новый проект (New Project) Visual C++, Win32 Console Application Console Application, Empty project 3. Создадим файл main.cpp Source Files – Add – New Item, .cpp 4. Открываем созданный файл в студии.
  • 18.
    Текст программы #include <stdio.h> intmain() { printf("Hello World!"); return 0; } Сохраните и нажмите кнопку Run (F5).
  • 19.
    Hello World! наJS 1. Запускаем Notepad++. 2. Создаём файл “program.html”. 3. Открываем “program.htm” в Notepad++. 4. Открываем “program.htm” в Chrome. 5. В Chrome открываем консоль (F12) 6. Редактируем “program.htm” в Notepad++.
  • 20.
  • 21.
    Используем переменные Задача: Создать переменнуюХ, присвоить ей значение 73. Затем вывести результат на экран вместе со словами “Hello World!”. Пример результата: “Hello World 73”. Справка: • С – printf использует форматированный вывод: printf(“a=%i”, 21); выведет “a=21”. • JS – поддерживается сложение строк и чисел, например: ‘a=’+21 будет ‘a=21’.
  • 22.
    Домашнее задание 1. Установитьинструменты на домашних ПК: • Visual Studio 2012 Express; • Notepad++; • Google Chrome. 2. Повторить «Hello World!» на JS и C. 3. Вычислить и вывести на экран выражение по варианту.
  • 23.
    Варианты, x =№ 1. (x – 2) * 3 + 6 * (x + 1)2 2. x2 – 3*x + 2 * (5 – x) 3. (x + x – 1)2 / 5 – 2 * x 4. (x + 1)2 * 3 + 6 – 19 5. 3*x + 2 * (x + x – 1) 6. 5 – 2 * x + x2 – 3 * x 7. 3 + 6 * (5 – x) + (x + 1)2 8. 2 * x + x2 – 9 – 7 * x 9. (x – 1) * 4 + 8 * (x – 6)2 10.x2 / (2*x) + 11 * (5 – x) 11.(x – x + 2)2 * 15 – 2 * x 12.(x / 4)2 * (3 + 6 * x) – 99 13.3*x + 2 * (x + x – 1) 14.5 – 2 * x + x2 – 3 * x 15.4 + 8 / (x – 16)2 + x2