Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // !!! ССЫЛКА НА КОД: https://godbolt.org/z/frPP3KjMG !!!
- #include <iostream>
- #include <vector>
- #include <cmath>
- #include <string>
- /*
- Сигнатура функции:
- 1. название функции:
- 2. типы аргументов функции (что она принимает):
- 3. тип возращаемого значение (что она возвращает):
- Результат:
- тип_возвращаемго_значения название_функции (тип_аргумента_1, типа_аргумента_2);
- */
- struct Vector {};
- // Функция которая сравнивает длину вектора с числом и говорит больше ли длина или меньше
- bool check(double length, double value);
- // Сумму трех векторов
- Vector sum_vector(Vector fisrst, Vector second, Vector third);
- // Скаларное произведение черз модули и угол
- double scalar(double first, double second, double angle);
- // Скалярное произведение двух векторов
- double scalar(Vector first, Vector second);
- // Создать функцию которая принимает на вход два вектора, и находит длину вектора разницы между ними
- double length_difference(Vector first, Vector second);
- // Создать функцию которая принимает на вход два вектора, и находит вектор разницы между ними
- Vector difference (Vector first, Vector second);
- /*
- Структура:
- Это ТИП ДАННЫХ, который:
- - внутри себя хранит несколько других типов данных, которые описываю этот тип. Называются ПОЛЯ СТРУКТУРЫ
- - внутри хранит функции которые этот тип может делать. Называются МЕТОДЫ СТРУКТУРЫ
- Например:
- Тип студент
- - хранит: имя, возраст, оценки
- - может представить себя
- */
- struct Student {
- // Поле - имя типа строка
- std::string name;
- // Поле - возраст типа цлое чилсо
- int age;
- // Метод - который печатает как студен прдставляется при знакомсве
- void Present() {
- std::cout << "Hi, my name is " << name << ". I am " << age << " years old" << std::endl;
- }
- };
- /*
- Пространство имен.
- По сути область которая ограничивает видисочсть кода внутри: функций, чисел, структур тип.
- Использщуется в больших програмах чтобы объединить логически связанный код в одну область.
- И чтобы избежать повторения одинаковых имен у переменных
- Пример ты знаешь пространство std - в нем есть функции cout, endl.
- Те в файле iostream (#include<iostream>) есть вот такой код (условно - для простоты):
- namespace std{
- void cout();
- void end();
- }
- И чтобы не писатб всегда std::cout,std::endl можно написать:
- - using namepspace std;
- - и использовтьа cout, end без std::
- */
- namespace Correct {
- double Pi = 3.14;
- int sum (int first, int second) {
- return first + second;
- }
- };
- namespace InCorrect {
- double Pi = 100.500;
- int sum (int first, int second) {
- return first * second;
- }
- };
- int main(){
- // Структуры
- Student alex;
- alex.name = "Aleksei";
- alex.age = 29;
- alex.Present();
- // Можно вот так сделать: = {имя, возраст}. В том порядке в котором поля идут внутри структуры
- Student anastasia = {"Anastasia", 18};
- anastasia.Present();
- // Пространства имен.
- // тут мы используем функцию которая в пространстве имен Correct - и праилно считает сумму
- int sum_correct = Correct::sum(10, 20);
- std::cout << "Correct sum = " << sum_correct << std::endl;
- std::cout << "Correct PI = " << Correct::Pi << std::endl;
- // Сказать что теперь мы видем все что есть в пространстве имен Incorrect.
- // Тперь можно не писать InCorrect::Pi, InCorrect::sum
- using namespace InCorrect;
- // тут мы используем функцию которая в пространстве имен Correct - и праилно считает сумму
- int sum_incorrect = InCorrect::sum(10, 20);
- std::cout << "IN Correct sum = " << sum_incorrect << std::endl;
- std::cout << "IN Correct PI = " << Pi << std::endl;
- return 0;
- }
Advertisement
Comments
-
- // Homework: https://godbolt.org/z/Ev7hGze8a
- #include <iostream>
- #include <vector>
- #include <cmath>
- /*
- Реализцем Vector.
- 1. Создать структуру Vector представляющую вектор в 2D пространстве
- 2. Создать у структуры МЕТОД length - который вычисляет модуль вектора
- 3. Создать у структуры МЕТОД multiply - который домножает координаты x и у вектора на заданное число
- Пример: вектор (1, 2) при домножении на 3 будет вектором (3, 6)
- 4. Создать у структуры МЕТОД print - который печатает в консоль координаты вектора в таком формате: "(x, y)"
- Пример: вектор с x=3, y=4 будет распечатан как: "(3, 4)"
- 5. Создать функцию difference которая считает вектор равный разнице двух векторов
- 6. Создать функцию differenceLength которая считает длину вектора разницы двух векторов
- Реализуем Position.
- 1. Создать структуру Position представляющую точку в 2D пространстве.
- Реализуем SpaceBody.
- 1. Создать структуру, которая реализует космический объект который мы будем моделировать.
- P.S. Подумать какие поля нужны для того чтобы в каждый момент времени можно было знать положение тела
- основываясь на законе всемирного тяготения.
- Если что-то не знаешь - гугли! Обычно есть ответы тут:
- https://ru.stackoverflow.com/
- https://practicum.yandex.ru/profile/cpp/
- */
- /*
- Сигнатура функции:
- 1. название функции:
- 2. типы аргументов функции (что она принимает):
- 3. тип возращаемого значение (что она возвращает):
- Результат:
- тип_возвращаемго_значения название_функции (тип_аргумента_1, типа_аргумента_2);
- */
- int main(){
- return 0;
- }
Add Comment
Please, Sign In to add comment
Advertisement