Я почти закончил всю свою домашнюю работу, но последняя часть, которую мне нужно сделать, — это написать программу, которая будет читать некоторые значения из текстового файла с именем «quad.txt», вычислять корни с помощью квадратичной формулы, а затем выводить значения. Первая часть лабораторной работы заключалась в том, чтобы сделать все это в одной функции main. Это отлично работает. Однако теперь меня просят написать три отдельные функции: одну, которая вычисляет дискриминант (b^2 -(4*a*c)) и возвращает строковое значение (положительное, нулевое или отрицательное) на основе значения дискриминанта, другую, которая будет вычислять фактические корни и выводить данные на основе возвращенного строкового значения, указанного выше, и, наконец, основную функцию, которая откроет файл и запустит две другие функции. См. мой код ниже, но я застрял в том, что не могу понять, как вернуть строку из функции disk(), а затем заставить функцию display() вызвать возвращаемое строковое значение и вывести правильные данные. Вот мой код:
Вот ссылка на мой файл Quad.txt quad.txt
//Brian Tucker
//5.23.2012
//Lab 6 Part1
//Quadratic Formula from text file
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int a, b, c; //sets up vars
double r1, r2;
string disc(){
if((pow(b,2) - (4*a*c) > 0)){ //determines if there are two roots and outputs
return positive;
}
else if((pow(b,2) - (4*a*c) == 0)){ //determines if there is a double root
return zero;
}
else if((pow(b,2) - (4*a*c) < 0)){ //determines if there are no roots
return negative;
}
}
void display(string data){
r1=((-b)+sqrt(pow(b, 2)-(4*a*c)))/(2*a); //quadratic formula
r2=((-b)-sqrt(pow(b, 2)-(4*a*c)))/(2*a);
if(positive){
cout
Подробнее здесь: https://stackoverflow.com/questions/107 ... r-function