всі повідомлення admin

SQRT() - Функція бібліотеки cmath




SQRT( значення );

функція sqrt() бібліотеки cmath (math.h) приймає параметр value і повертає його квадратний корінь.

якщо параметр ( в нашем случае – значення) негативний, виникає помилка.

Результат виконання показаний в онлайн компіляторі ideone

приклад роботи функції sqrt c ++

Нові уроки з програмування:

Інтернет компілятори




Часто виникає необхідність швидко показати кому-небудь, як вирішити невелику задачу з програмування або як реалізувати алгоритм. Можна просто скинути у відповідь шматок коду, але краще скористатися одним з online-компіляторів. У багатьох з них є можливість отримати спеціальну посилання на скомпільований код. Таке посилання можна наприклад залишати в коментарях до статей. Пройшовши по ній люди побачать не тільки сам код, але і результат роботи програми.

Розглянемо кілька варіантів online-компіляторів підтримують мову програмування C ++

1. Online компілятор для З ++ на сайті primat.org . додаємо код, тиснемо RUN і чекаємо виконання.

online-компілятор на primat.org

Якщо програма по ходу роботи вимагає дій користувача – виконуємо їх:

online-компілятор - дії користувача

Якщо виникнуть помилки вони відобразяться у вкладці compilation, яка відкриється автоматично. У внеску options можна вибирати різноманітні параметри для компіляції, якщо вас не влаштовують задані за замовчуванням.

Щоб отримати посилання на цей код – тиснемо

online-компілятор - дії користувача

Так само на цьому сайті є компілятор для Паскаль.

2. ideone online-компілятор

ideone online-компілятор

Відразу при вході зверніть увагу на ту мову програмування, яка була обрана за замовчуванням. Змініть його при необхідності. Вхідні дані внесіть в stdin:

ideone online-компілятор

ideone online-компілятор

Тут дуже великий вибір мов для компіляції:

мови програмування на ideone

3. стіна вікно онлайн компілятор

Настінний ящик онлайн компілятор

Вхідні дані треба прописувати в Stdin до того, як натиснете Run.

Настінний ящик онлайн компілятор

Мені сподобалося, що він зберігає історію компіляцій. Крім С ++ тут ​​є широкий вибір мов програмування для компіляції:

мови програмування на Wandbox

4. C / C ++ Compiler Інтернет

online-компілятор Compiler

online-компілятор Compiler

В останньому якось заморочене з посиланням у них. Плюс не зрозуміло де дивитися результат виконання програми. просто показує, що програма повернула значення 0.

Дивіться також як встановити Microsoft Visual Studio 2015 Express

Нові уроки з програмування:

бух() - Функція бібліотеки cmath




бух(a, b);

функція POW() бібліотеки cmath приймає два параметри: a, b. Перше число a (базове) зводиться до степеня b.

Повертає значення ab .

Результат виконання 23 , 53, 52 :

бух () - функція бібліотеки cmath

 

Нові уроки з програмування:

fma () – функція бібліотеки cmath




fma(a, b, c);

Функція fma() бібліотеки cmath приймає три параметри: a, b – значення для множення, c – значення для додавання.

Повертає значення a * b + c.

Результат виконання ( 2 * 2 + 3):

fma () - функція бібліотеки cmath

Нові уроки з програмування:

Збір коштів на навчання

1Всім привіт! Мене звуть Лілія і я автор сайту PureCodeCpp. Рада допомагати вам у вивченні С ++.

У лютому цього року я пройшла тестування і співбесіду в Буряк академія і мені «подарували» прекрасну можливість навчатися - пройти чотиримісячний курс навчання по розробці сайтів на WordPress. навчання розпочалося 10 березня і триватиме до 9 липень 2016 року.

Вартість курсу досить висока. Всім хто хоче і зможе підтримати мене фінансово буду дуже вдячна. Обіцяю вчитися добре!

Для перекладу вибирайте будь-який зручний спосіб :

  1. Переклад в WebMoney. Гаманці: R262422197963 (рублі), U391743246007 (гривні), Z420483933399 ($). Вхід в WebMoney: 3
  2. Переклад на карту ПриватБанку № 5168 7555 0131 6711. Вхід в Приват24:

    Снімок2

  3. Відправлення переказу по SMS. Billing3

Імена всіх спонсорів будуть внесені на сторінку сайту «Спонсори проекту PureCodeCpp». з 15.03.2016 вже зібрано 10% від якої бракує мені суми!

А ось і ми на першому занятті 10.03.2016:

буряк16
347
85

Встановлення Microsoft Visual Studio 2015 Express (IDE).




Середовище розробки Microsoft Visual Studio – це така спеціальна програма в якій ми будемо писати команди комп'ютеру, а вона ці команди буде переводити (за допомогою так званого компілятора) в машинну мову (з одиниць і нулів), обробляти і видавати нам якийсь результат роботи нашого програмного коду. Щоб розпочати інсталяцію Microsoft Visual Studio Express вам треба пройти за цим посиланням. Прокрутіть сторінку і знайдіть там блок з Express for Desktop – це те що нам потрібно.Установка Microsoft Visual Studio Express

Примітка: Зараз Microsoft рекомендує встановлювати Visual Studio Community. Якщо хочете встановіть його з тієї ж сторінки.

Єдине, перед тим як натиснути кнопку Завантаження, перегляньте пункти System Requirements (системні вимоги до вашого комп'ютера). Якщо вони не відповідають вашому, наприклад у вас старіша версія Windows, то знайдіть в Google Microsoft Visual Studio 2010 Експрес або Microsoft Visual Studio 2013 Express і виберіть ту версію, що буде відмінно працювати на вашому комп'ютері. Ну а якщо всі вимоги виконуються – тисніть Завантаження.

как установить Microsoft Visual Studio 2015 ExpressТрохи чекаємо, поки завантажиться файл wdexpss_full_RUS.exe Ви можете знайти його в завантаженнях на вашому комп'ютері. Двічі клікніть на нього та натисніть кнопку Пуск:

как установить Microsoft Visual Studio 2015 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.2

Якщо так сталося, що ви не є щасливим володарем Internet Explorer 10, ви побачите таке попередження:

как установить Microsoft Visual Studio 2015 Express
Встановлення Microsoft Visual Studio 2015 Express – мал .3

Безпечно натисніть Продовжити. Далі вам потрібно обрати на який диск буде проведена установка (можете залишити те, цю пропонується за замовчуванням). Натискайте Встановити.

как установить Microsoft Visual Studio 2015 Expressм
Встановлення Microsoft Visual Studio 2015 Express – мал.4

Тут вже доведеться почекати кому скільки відміряно. Для тих у кого SSD – хвилин 15, а для жорсткого диска беремо хвилин 30 – 40. Так що у вас з'явилося трохи вільного часу. Можете відпочити.

как установить Microsoft Visual Studio 2015 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.5

Після того, як все буде прийнято та застосовано ми побачимо повідомлення:

как установить Microsoft Visual Studio 2015 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.6

Це означає, що все, що встановилось без проблем і можна запускати програму. Вам запропонують увійти в Обліковий запис Microsoft. Якщо ви його не маєте – натисніть Реєстрація. Краще зареєструватися відразу, так як якщо цього не зробити, то через 30 днів MVS 2015 Express перестане працювати, поки ви не створите цей обліковий запис.

Установка Microsoft Visual Studio 2013 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.7

Після входу або реєстрації ми нарешті побачимо середу розробки, що відкрилася . Щоб переконатися, , що вона нормально працює (а інакше і бути не може), покажу вам як створити новий проект, щоб зробити код і запустити. У відчиненій MVS натискаємо Створити проект

как установить Microsoft Visual Studio 2015 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.8

У цьому вікні натисніть на Visual C ++, Win32, Консольний додаток Win32, введіть будь-яке ім'я для вашого нового проекту і зніміть галочку з Створити каталог для рішення. Натисніть OK.

Установка Microsoft Visual Studio 2013 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.9

Відкриється Майстер додатків. У ньому натисніть Далі

Установка Microsoft Visual Studio 2013 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.10

Відзначте Консольний додаток і Порожній проект. Далі, ви можете натиснути Готово.

Установка Microsoft Visual Studio 2013 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.11

Проект створений. Тепер нам потрібно створити файл з розширенням. cpp. У нього ми будемо писати код програми. Це робиться так: в віконці Оглядач рішень натисніть правою кнопкою миші на ім'я вашого проекту (у мене це ConsoleApplication2)

Установка Microsoft Visual Studio 2013 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.12

Виберіть Додати та Клас:

створення проекту і файлів cpp в microsoft visual studio

Відкрийте вкладку Visual C ++ і виберіть C ++, а потім в списку шаблонів в центральній області виберіть Клас C ++. Натисніть Додати.

створення проекту і файлів cpp в microsoft visual studio

В поле майстра універсальних класів C ++ введіть в поле Ім'я класу mycode. Не змінюйте імена файлів і параметри за замовчуванням. Натисніть кнопку Готово.

створення проекту і файлів cpp в microsoft visual studio

Все – тепер у вашому проекті створений файл, в який можна писати команди на мові С ++.

створення проекту і файлів cpp в microsoft visual studio

Ще, для зручності роботи, я вам відразу пропоную включити нумерацію рядків коду. Для цього натисніть на Сервіс – Параметри – Текстовий редактор – С / С ++ і встановіть галочку Номери рядків. ОК.

Установка Microsoft Visual Studio 2013 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.15

Далі, не вдаючись у подробиці, просто скопіюйте код нижче і вставте в ваш файл з ім'ям mycode.cpp. (все що в ньому містилося до цього можна видалити)

Після вставки натисніть клавіші Ctrl + Shift + B – розпочнеться компілювання програми. Ви повинні побачити в нижньому рядку вікна Збірка: успішно: 1, з помилками: 0 і т.д. Після цього натискаємо Ctrl + F5 і побачити повідомлення у вікні: “Ми створили перший проект в MVS2015”.

как установить Microsoft Visual Studio 2015 Express
Встановлення Microsoft Visual Studio 2015 Express – мал.16

Сподіваюся, у вас все вийшло. Якщо у вас є які-небудь питання, не соромтеся задати їх в коментарях до цієї статті.

Існує також багато онлайн компіляторів якими ви можете користуватися для нескладних завдань з програмування.

Конструктор копіювання в С ++




конструктор копіювання в с ++,  конструктор копії c ++, програмування на с ++ для початківцівКоли новачки вивчають програмування, першим ділом, при розгляді нової теми, виникає питання – для чого необхідна та чи інша “вещь” про яку зараз належить дізнатися. Відповімо відразу на це питання: “Навіщо потрібен конструктор копіювання?”.

Конструктор копіювання необхідний для того, щоб ми могли створювати “реальні” (а не побитовые) копії для об'єктів класу. Така копія об'єкта може знадобитися в наступних випадках:

  • при передачі об'єкта класу в функцію, как параметра по значению (а не за посиланням);
  • при поверненні з функції об'єкта класу, як результату її роботи;
  • при ініціалізації одного об'єкта класу іншим об'єктом цього класу.

При передачі об'єкта в функцію як параметра по значению, ця функція почне працювати з його побітової копією, а не з полями самого об'єкта. Припустимо визначені конструктор і деструктор класу. Перший пам'ять виділяє, а другий її звільняє. Під час роботи функції, покажчик побітової копії об'єкта вказує на адресу пам'яті, де розташований оригінальний об'єкт. В той час, коли робота функції завершується – видаляється і побітова копія об'єкта. При її видаленні обов'язково спрацює певний деструктор і звільнить ту пам'ять, що зайнята об'єктом-оригіналом. Програма продовжить роботу, і при завершенні роботи, деструктор спрацює повторно, намагаючись звільнити все той же відрізок пам'яті. Це викличе помилку програми.

Використання конструктора копіювання – прекрасний спосіб обійти ці помилки і проблеми. він створить “реальну” копію об'єкта, яка матиме особисту область динамічної пам'яті.

Конструктор копіювання синтаксично виглядає так:

Нижче розберемо нескладний, але дуже показовий приклад. У ньому будуть розглянуті всі 3 випадку в яких бажано застосовувати конструктор копіювання. Буде створено клас, містить конструктор без параметрів, конструктор копіювання і деструктор. Щоб приклад був не надто громіздким, конструктори і деструктор будуть виводити на екран повідомлення типу “спрацював конструктор”, “спрацював дектруктор”… Виділяти і звільняти пам'ять не будемо. Нам відмінно буде видно скільки разів спрацюють конструктори а скільки разів деструктор. очевидно, що деструкція (якби він звільняв пам'ять) не повинен спрацьовувати більшу кількість разів, ніж конструктор, виділяє пам'ять.

Приклад:

Конструктор без параметрів буде викликатися під час створення нових об'єктів класса. Конструктор копіювання – під час створення копій об'єкта. Деструкція спрацьовує при видаленні і реального об'єкта і його копії. У тілі функцій все описано докладно і не вимагає додаткових коментарів.

Запустивши програму побачимо в консолі наступне:

конструктор копіювання в с ++,  конструктор копії c ++,  програмування на с ++ з нуля

Подивимося що програма видала в консоль. блок 1 – під час створення нового об'єкта, спрацював конструктор без параметрів. В блоці 2 ми розмістили функцію showFunc(). Під час передачі в неї “об'єкта-параметра” по значению, спрацював конструктор копіювання і створилася “реальна” копія об'єкта класу OneClass. При виході з цієї функції спрацював деструктор, так як копія об'єкта знищується. До речі, те, що передача об'єкта як параметра за значенням, викликає конструктор копіювання, служить відмінним приводом для передачі об'єкта за посиланням. Це заощадить і час і пам'ять.

В блоці 3 розміщена функція returnObjectFunc(). Так як в її тілі прописано створення нового об'єкта класу OneClass – спочатку спрацював конструктор без параметрів. Далі виконується код функції і під час повернення об'єкта в головну функцію main, спрацював конструктор копіювання. В кінці, як і має бути, деструктор відпрацював двічі: для об'єкта і для його реальної копії.

В четвертому блоці, під час оголошення і ініціалізації нового об'єкта object2, спрацював конструктор копіювання. При завершенні роботи програми деструктор спрацював для копії об'єкта з четвертого блоку і для об'єкта object1 з першого блоку.

Якщо ж ми закомментіруем /*конструктор копіювання * / в класі і знову запустимо програму – увидим, що конструктор без параметрів спрацює 2 рази, а деструктор – п'ять разів відпрацює.

конструктор копіювання в с ++,  конструктор копії c ++, програмування на с ++ з нуля

В цій ситуації, якби деструктор звільняв пам'ять - в програмі виникла б помилка.

Дуже рекомендую прочитати тему Конструктор копіювання в книзі Стівена Прата “Мова програмування С ++. Лекции и упражнения. 6-видання.” Вона розкрита набагато глибше і включає всі основні нюанси використання конструктора копіювання. Докладно розглянута операція присвоювання =.

Щоб підтримати наш сайт – натисніть на скарбничку і виберіть будь-який зручний спосіб.

Нові уроки з програмування:

Перезавантажений конструктор класу




перевантажений конструктор класу з ++, основы программирования для начинающих, c ++ з нуля

у статті Конструктор і деструктор класу ми вже зустрічалися з перевантаженим конструктором в коді, але не акцентували на цьому увагу. Перевантаження конструкторів дуже схожа з перевантаженням функцій. Конструкторів в обумовленому класі може бути кілька – по мірі необхідності. Вони повинні мати однакове ім'я, ідентичне імені класу і обов'язково повинні відрізнятися сигнатурою. Наприклад: один з конструкторів не приймає параметри, другий приймає два параметри, третій приймає три параметри. пізніше, під час створення об'єкта, параметри передаються в якості аргументів. Так компілятор зможе визначити, який з оголошених конструкторів застосувати при створенні об'єкта.

Рассмотрим пример:

перевантажений конструктор класу з ++, основы программирования для начинающих, c ++ з нуля На цьому прикладі досить легко побачити, чим викликана необхідність перевантаження конструкторів. Основний сенс в тому, щоб дати можливість програмісту вибрати найбільш підходящий спосіб ініціалізації об'єкта.

Тут представлений найпоширеніший варіант перевантаження конструкторів. А саме конструктор з параметрами і другий без параметрів. часто, програмісту бувають необхідні обидва подібних конструктора, так як конструктор з параметрами зручно використовувати, працюючи з поодинокими об'єктами. Але він не може бути використаний, например, для ініціалізації динамічного масиву об'єктів класу.

При кожному оголошенні об'єкта класу треба застосовувати відповідний певним конструкторам спосіб оголошення.

Конструктор можна перевантажувати стільки раз, скільки вважаєте за потрібне. Але, як буває у більшості випадків, бажано дотримуватися золотої середини. Перевантажуйте його тільки для найбільш поширених ситуацій.

хочеться додати, що деструкція, на відміну від конструктора, перевантажений бути не може, так як він ніяких параметрів не приймає.

Щоб підтримати наш сайт – натисніть на скарбничку і виберіть будь-який зручний спосіб.

Нові уроки з програмування:

Задачі та рішення: Покажчик на покажчик

1) Створити двовимірний масив 5х5, заповнити його випадковими числами від 10 до 99 і вивести на екран. Поміняти місцями максимальний елемент кожного рядка з першим елементом у відповідному рядку. Завдання вирішити за допомогою покажчиків.


2) Завдання на множення матриць. Користувач довільно задає розмірність двох матриць і заповнює значеннями вручну. Не забувайте, що необхідно виділити відповідні ділянки пам'яті для матриць, які буде заповнювати користувач і для третьої підсумкової матриці. Далі виведіть на екрані обидві заповнені матриці і підсумкову матрицю (їх відтворення).

Можливо хтось не знає, як множити матриці. Подивіться це коротке відео (автор: Пріходовскій М.А.)


Щоб підтримати наш сайт – натисніть на скарбничку і виберіть будь-який зручний для Вас спосіб.

Нові уроки з програмування:

Оплата за вирішення завдань

Ми пропонуємо кілька способів оплати за вирішені завдання:

  1. Переклад в WebMoney. Гаманці: R262422197963 (рублі), U391743246007 (гривні), Z420483933399 ($). Вхід в WebMoney: 3
  2. Переклад на карту ПриватБанку (Украина)№ 5168 7555 0131 6711. Вхід в Приват24:

    Снімок2

  3. Відправка по SMS (всі країни). В цьому випадку вартість послуг збільшується на 2, так як більше половини суми піде на оплату комісії. Billing3