logo search
Методичка 2 Программирование

Примеры написания программ

Задача. Написать программу с функцией, вычисляющей корни квадратного уравнения.

Анализ решения задачи.

1. Название функции: kvadr

2. Исходные данные (коэффициенты double a,b,c)

3. Результаты:

через return передаем результат типа bool (вычислены ли корни?)

через параметры-ссылки передаем значения корней

double &x1; double &x2;

Программа будет строиться в виде проекта.

Текст функции пользователя будет выглядеть так:

// содержимое файла kvadr.cpp

#include <math.h>

bool kdvadr(double a, double b, double c, double &x1, double &x2)

{

double d;

d = b*b-4*a*c;

if (d>=0)

{

x1=(-b+sqrt(d))/(2*a);

x2=(-b-sqrt(d))/(2*a);

return true;

}

else return false;

}

Текст заголовочного файла будет выглядеть так:

// содержимое файла kvadr.h

#ifndef KVADR_H

#define KVADR_H

bool kdvadr(double a, double b, double c, double &x1, double &x2);

#endif

Текст функции main будет выглядеть так:

// содержимое файла main.cpp

#include<iostream> //подключение системных средств для

using namespace std; //возможности использовать потоки ввода-вывода

#include "kvadr.h"

#include "Rus.h" //прототип функции русификации

int main (void)

{

double a, b, c, x1, x2;

bool result;

cout << "\nВведите коэффициенты" << endl;

cin >> a >> b >> c;

result = kdvadr (a,b,c, x1, x2);

if (result == true)

cout << "\nx1=" << x1 << "\nx2=" << x2 << endl;

else

cout << "\nНет корней" << endl;

return 0;

}