Здесь показаны различия между двумя версиями данной страницы.
— |
introduction_in_programming [2019/06/24 20:29] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Введение в программирование ====== | ||
+ | |||
+ | ===== От JavaScript к С++ ===== | ||
+ | |||
+ | ===== JavaScript ===== | ||
+ | |||
+ | http://javascript.ru/manual - справочник по современному javascript. | ||
+ | |||
+ | ==== Quick Start (вводный урок, песочница) ==== | ||
+ | |||
+ | http://jsfiddle.net/Researcher/dp8GD/2/ | ||
+ | |||
+ | ==== IDEONE.COM ==== | ||
+ | |||
+ | http://ideone.com - на ideone **javascript (spidermonkey)** | ||
+ | ==== Задание 1 ==== | ||
+ | |||
+ | **Задача № 8 из тренировочной работы № 1 по ИНФОРМАТИКЕ 19 октября 2012 года вариант 1 ГИА.** | ||
+ | |||
+ | <code javascript> | ||
+ | |||
+ | a =14; | ||
+ | b =4; | ||
+ | a =a/2 - b; | ||
+ | b =(a*b)/2; | ||
+ | b =a+b; | ||
+ | |||
+ | // выведите в "консоль" значение переменной b, | ||
+ | // используя функцию printf | ||
+ | |||
+ | </code> | ||
+ | |||
+ | **Дополнительный материал** | ||
+ | |||
+ | http://intepra.ru/wiki/doku.php/linear_algorithm | ||
+ | |||
+ | ==== Задание 2 ==== | ||
+ | |||
+ | **Напишите программу, вычисляющую для заданного радиуса сферы площадь поверхности и объём.** | ||
+ | |||
+ | **Вспомогательный материал:** | ||
+ | |||
+ | [[http://www.fxyz.ru/формулы_по_геометрии/формулы_площади/площадь_поверхности_сферы/]] | ||
+ | |||
+ | [[http://www.fxyz.ru/формулы_по_геометрии/формулы_объема/объем_шара/]] | ||
+ | |||
+ | На сайте fxyz.ru приведены не только формулы, но и расчетный калькулятор, позволяющий сравнить результат, который получается в процессе работы программы, с результатом калькулятора: проверьте правильность работы своей программы. | ||
+ | |||
+ | |||
+ | ==== Задание 3 ==== | ||
+ | Определите, что будет напечатано в результате работы следующего | ||
+ | фрагмента программы B3 | ||
+ | |||
+ | <code javascript> | ||
+ | |||
+ | s = 0; | ||
+ | k = 0; | ||
+ | while (s<1024) { | ||
+ | s = s+10; | ||
+ | k = k+1; | ||
+ | } | ||
+ | |||
+ | |||
+ | // выведите в "консоль" значение переменной k, | ||
+ | // используя функцию printf | ||
+ | |||
+ | </code> | ||
+ | |||
+ | ==== Задание 4 ==== | ||
+ | Определите, что будет напечатано в результате работы следующего | ||
+ | фрагмента программы B6 | ||
+ | |||
+ | <code javascript> | ||
+ | |||
+ | a = 40; | ||
+ | b = 80; | ||
+ | b = - a - 2 * b; | ||
+ | if (a < b) | ||
+ | c = b – a; | ||
+ | else | ||
+ | c = a - 2 * b; | ||
+ | |||
+ | |||
+ | // выведите в "консоль" значение переменной c, | ||
+ | // используя функцию printf | ||
+ | // Внимание если код переносить в редактор методом копирования, возникает ошибка при интерпретации программы! | ||
+ | |||
+ | </code> | ||
+ | |||
+ | ==== Задание 5 ==== | ||
+ | |||
+ | Использование алгоритмической структуры ветвление при написании программы нахождения корней квадратного уравнения. | ||
+ | |||
+ | https://www.lucidchart.com/documents/view/48ee-8fb4-50c58181-ba0b-2e520a40476b | ||
+ | |||
+ | Дописать программный код | ||
+ | |||
+ | http://ideone.com/ZTuqIT | ||
+ | |||
+ | ==== Задание 6 ==== | ||
+ | **Алгоритмическая структура "цикл". § 4.2.4** | ||
+ | |||
+ | === Гипотеза_Коллатца === | ||
+ | [[http://ru.wikipedia.org/wiki/Гипотеза_Коллатца]] | ||
+ | http://ideone.com/O1FIsk | ||
+ | |||
+ | === Нахождение наибольшего общего делителя === | ||
+ | |||
+ | **Алгоритм Евклида (нахождение наибольшего общего делителя)** | ||
+ | |||
+ | http://younglinux.info/algorithm/euclidean | ||
+ | |||
+ | **Графический принцип решения** | ||
+ | |||
+ | https://docs.google.com/open?id=0ByJDtWIdOzzjZW9sTm5Qa3Q4NTA | ||
+ | |||
+ | Вариант решения на IDEONE.COM | ||
+ | |||
+ | http://ideone.com/FHIlt6 | ||
+ | |||
+ | ==== NOD ПРЕЗЕНТАЦИЯ ==== | ||
+ | |||
+ | **javaScript vs C++** | ||
+ | |||
+ | **Визуальная модель работы алгоритма программы для нахождения наибольшего общего делителя (НОД)** | ||
+ | |||
+ | https://skydrive.live.com/redir?resid=EDFFB9398CEB06C8!130&authkey=!AKNPtocTUoghZvU | ||
+ | |||
+ | https://docs.google.com/presentation/d/10yWCHcfIM93c-cHgA2bTzvv-ymIQYDyGS8PzM8Nb3ZM/edit (если первая ссылка, вдруг, не работает) | ||
+ | ==== Задание 7. Задачи на цикл while ==== | ||
+ | |||
+ | |||
+ | |||
+ | http://informatics.mccme.ru/moodle/mod/statements/view3.php?id=249&chapterid=113 | ||
+ | |||
+ | * A)Задача №113. Список квадратов | ||
+ | * B)Задача №3058. Минимальный делитель | ||
+ | * C) Задача №3059. Список степеней двойки **ИЛИ** D) Задача №3060. Точная степень двойки | ||
+ | * F) Задача №3062. Утренняя пробежка **ИЛИ** G) Задача №3063. Банковские проценты | ||
+ | * H) Задача №3074. Числа Фибоначчи | ||
+ | |||
+ | **IDEONE.COM** http://ideone.com - на ideone **javascript (spidermonkey)** | ||
+ | |||
+ | ===== ОСНОВЫ ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ C++ ===== | ||
+ | |||
+ | ==== Программные среды для написания программ на языке C++ ==== | ||
+ | |||
+ | [[http://ideone.com/]] - online редактор (выбрать язык C++) | ||
+ | |||
+ | [[http://www.microsoft.com/visualstudio/rus/products/visual-studio-express-products]] -- Продукты Visual Studio Express 2012 | ||
+ | |||
+ | [[http://kpolyakov.narod.ru/school/c/devcpp.htm]] -- Dev-C++ оболочка для программирования в Windows | ||
+ | |||
+ | [[http://www.codeblocks.org/downloads/binaries]] -- Code::Blocks - The IDE with all the features you need, having a consistent look, feel and operation across platforms. | ||
+ | ==== Руководства и примеры программного кода ==== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | http://informatics.mccme.ru/moodle/mod/book/view.php?id=578 - Дистанционная подготовка Операторы ввода - вывода ("Hello, world!") | ||
+ | |||
+ | [[http://informatics.mccme.ru/moodle/]] - основные конструкционные элементы языков программирования | ||
+ | |||
+ | Переходим по указанной ссылке и выбираем для дальнейшего изучения необходимый конструкционный элемент, например: | ||
+ | |||
+ | [[http://informatics.mccme.ru/moodle/course/view.php?id=34]] - Ввод - вывод | ||
+ | |||
+ | **Еще один ресурс для начинающих:** | ||
+ | |||
+ | http://code-live.ru/tag/cpp-manual/ C++ с нуля (уроки для начинающих) | ||
+ | |||
+ | http://code-live.ru/post/cpp-hello-world/ - Первая программа на C++ — урок 1 | ||
+ | |||
+ | **Visual C++ Express from Microsoft’s (на английском):** | ||
+ | |||
+ | [[http://www.schoolfreeware.com/C++_Win32_Console_Tutorials_-_Visual_C++_2010_Express.html]] - | ||
+ | ==== Основные операции ==== | ||
+ | |||
+ | Основные арифметические операции **+, -, *, /, %**, | ||
+ | |||
+ | основные логические операции **&&, ||, !,** | ||
+ | |||
+ | операции сравнения **>, <, ==, >=, <=, !=** | ||
+ | |||
+ | **Внимание!** | ||
+ | |||
+ | Не путать оператор присваивания **=**, например: | ||
+ | <code c++> | ||
+ | int a = 5; | ||
+ | </code> | ||
+ | и | ||
+ | |||
+ | оператор проверки на равенство **==**, например: | ||
+ | <code c++> | ||
+ | if (a % 2 == 0){ | ||
+ | cout << a << " четное" << "\n"; | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | ==== Математические функции и операторы ==== | ||
+ | |||
+ | http://www.w3schools.com/js/js_operators.asp - JavaScript Arithmetic Operators (можно выбрать русский язык) | ||
+ | |||
+ | http://en.wikipedia.org/wiki/Operators_in_C_and_C%2B%2B C/C++ Arithmetic Operators | ||
+ | |||
+ | http://www.w3schools.com/jsref/jsref_obj_math.asp | ||
+ | |||
+ | http://javascript.ru/Math - математические функции и константы math в javascript. | ||
+ | |||
+ | http://ru.wikipedia.org/wiki/Math.h - math.h в языке программирования C/C++ | ||
+ | ==== Песочницы (online редакторы кода)==== | ||
+ | |||
+ | http://learn.javascript.ru/play - песочница. | ||
+ | |||
+ | http://www.w3schools.com/js/tryit.asp?filename=tryjs_operators1 - пример использования операторов | ||
+ | |||
+ | http://www.w3schools.com/js/js_obj_math.asp - примеры использования встроенных математических функций | ||
+ | |||
+ | http://jsfiddle.net | ||
+ | |||
+ | ==== IDEONE.COM ==== | ||
+ | |||
+ | http://ideone.com - на ideone **javascript (spidermonkey)** | ||