singizin

zashita

Nov 30th, 2021
877
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>     // Библиотека призвана предоставить средства ввода-вывода, для стандартной консоли. Чтобы использовать cout, cin
  2. #include <vector>       // https://ravesli.com/urok-95-vvedenie-v-std-vector-vektory/
  3. #include <cmath>        // подключаем библиотек, чтобы использовать pow() - возведение в степень
  4.  
  5.  
  6. // однострочный комментарий
  7.  
  8. /*
  9. * многострочный
  10. * комментарий
  11. */
  12.  
  13. /*
  14. * Почитайте основы и самое начало, уроки 8 - 14, заучивать не нужно, но понять поможет.
  15. * На этом сайте хорошо описано https://ravesli.com/urok-8-struktura-programm-s/
  16. *
  17. * почитать и знать про типы данных bool int double float, что бывает при переполнении и что в этом плохого?
  18. */
  19.  
  20. using namespace std;        // Что такое пространства имен, что мы делаем в этой строке? https://ravesli.com/urok-53-prostranstva-imen/
  21.  
  22.  
  23. int a;                      // объявление переменной типа int https://ravesli.com/urok-28-detalnee-ob-initsializatsii-prisvaivanii-i-opredelenii/
  24. int b = 1;                  // объявление и инициализация
  25. bool flag = true;           // объявление переменной типа bool
  26. int c[2] = { 0,1 };         // объявление и инициализация массива https://ravesli.com/urok-74-massivy-chast-1/
  27. vector<int> A = { 0,1,2 };  // объявление и инициализация вектора, почитайте что это и как устроен. Что такое методы и какие знаете? https://ravesli.com/urok-95-vvedenie-v-std-vector-vektory/
  28.  
  29. // Все переменные объявленные выше ГЛОБАЛЬНЫЕ и к ним можно обращаться в любом месте программы https://ravesli.com/urok-48-lokalnye-peremennye-oblast-vidimosti-i-vremya-zhizni/
  30.  
  31.  
  32. // Про функции, возвращаемые значения. Как объявить? когда retutn нужен, а когда нет? Что в круглых скобочках и обязательно ли их наличие?
  33. // https://ravesli.com/urok-12-funktsii-i-return/
  34. // https://ravesli.com/urok-96-parametry-i-argumenty-funktsij/
  35. void printHelloWorld() {
  36.     cout << "Hello World!" << endl; // как передавать/получать данные в консоль? https://ravesli.com/urok-11-sout-cin-i-endl/
  37. }
  38.  
  39. int kub(int x) {
  40.     /*
  41.     * функция на вход принимаем целое число и возвращает куб этого числа
  42.     */
  43.     return pow(x,3); // объявили функцию с возвращаемым типом int, значит обязательно должен быть оператор return и мы должны ВОЗВРАЩАТЬ ЦЕЛОЕ ЧИСЛО ТИПА INT
  44. }
  45.  
  46. // что такое &, почему используем? https://ravesli.com/urok-88-ssylki/ обратите внимание на часть "Ссылки в качестве параметров в функциях"
  47. void vector_sum(vector<int>& x) {
  48.     /*
  49.     * функция на вход принимаем ссылку на вектор, и суммирует все значения элементов вектора в переменную s
  50.     */
  51.     int s = 0;  // а эта переменная s локальная и существует только внутри этой функции и исчезает из памяти как только функция закончит свою работу
  52.     for (int i = 0; i < x.size(); i++) {
  53.         s += x[i];
  54.     }
  55.     cout << "summa elementov vectora: " << s << endl;
  56. }
  57.  
  58. void vector_fill_zero(vector<int>& x) {
  59.     /*
  60.     * функция на вход принимаем ссылку на вектор, и заполняет этот вектор по всей длине нулями
  61.     */
  62.     for (int i = 0; i < x.size(); i++) {
  63.         x[i] = 0;
  64.     }
  65.     // эта функция ничего не возвращает, почему тогда изменяется вектор, который мы передаем в эту функцию?
  66. }
  67.  
  68.  
  69. // Откуда начинается программа? Что за main()?
  70. int main(){
  71.  
  72.     printHelloWorld(); //для вызова функции нужно указать её имя и список параметров в круглых скобках
  73.    
  74.     cout << "--- for ---" << endl;
  75.     // что такое циклы, условные операторы и что за что отвечает в их записи?
  76.     // циклы https://ravesli.com/urok-69-tsikl-for/
  77.     int m = 5;
  78.  
  79.     for (int i = 1; i < m; i++) {
  80.         // Условные ветвления if/else https://ravesli.com/urok-64-operatory-uslovnogo-vetvleniya-if-i-else/
  81.         // Какие логические операторы есть? например, для чего используется '&&', '||', '!' ?
  82.         if (i % 2 == 0) {
  83.             cout << kub(i) << endl;
  84.         }
  85.         else {
  86.             cout << kub(-i) << endl;
  87.         }
  88.         if (i == 10) {
  89.             break;      // что такое break, continue?
  90.         }
  91.     }
  92.  
  93.     cout << "--- while ---" << endl;
  94.     int k = 0;
  95.     // до каких пор будет выполняться код внутри цикла? Что такое А.size() ? А - вектор, который мы объявили на 27 строке
  96.     while (k <= A.size()) {
  97.         cout << k << endl;
  98.         k++; // то же самое что и к = к + 1
  99.     }
  100.  
  101.  
  102. }
  103.  
RAW Paste Data