1) зачем тебе передавать в функцию флоат, а потом это кастовать к даблу, когда можно сразу передавать дабл
2) на кой тебе setlocale в этой задаче
3) почему ты пытаешься считать из консоли 7 аргументов, когда в задаче дается лишь 4
4) много лишних переменных, да еще и разных типов, которые ты пытаешься использовать в одних выражениях
5) Ты вообще понимаешь почему в этой задаче требуется прописать функцию для нахождения площади треугольника? Если да, то почему ты каждый раз вызываешь функцию подсчета площади от одних и тех же трех отрезков, да еще и не образующих треугольник...
CLS DIM n AS INTEGER INPUT "Введите кол-во студентов:", n
DIM studentYearsOld(1 TO n) AS INTEGER DIM studentName(1 TO n) AS STRING
FOR i = 1 TO n INPUT "Введите имя студента:", studentName(i) INPUT "Введите год рождения студента:", studentYearsOld(i) NEXT i PRINT FOR i = 1 TO n PRINT "Студент "; studentName(i) studentYrs = 2016 - studentYearsOld(i) IF studentYrs < 18 THEN PRINT "Лет до права голоса:"; 18 - studentYrs ELSEIF studentYrs >= 18 THEN PRINT "Студент уже имеет право голоса!" PRINT END IF studentYrs = 0 NEXT i
Код валидный, если допустил ошибку во время переписывания - сообщите.
1) зачем тебе передавать в функцию флоат, а потом это кастовать к даблу, когда можно сразу передавать дабл
2) на кой тебе setlocale в этой задаче
3) почему ты пытаешься считать из консоли 7 аргументов, когда в задаче дается лишь 4
4) много лишних переменных, да еще и разных типов, которые ты пытаешься использовать в одних выражениях
5) Ты вообще понимаешь почему в этой задаче требуется прописать функцию для нахождения площади треугольника? Если да, то почему ты каждый раз вызываешь функцию подсчета площади от одних и тех же трех отрезков, да еще и не образующих треугольник...
#include <iostream>
#include <cmath>
using namespace std;
double heron(double a_, double b_, double c_){
double p = (a_ + b_ + c_) / 2;
return sqrt(p * (p - a_) * (p - b_) * (p - c_));
}
void solve() {
double a, b, c, d;
cout << "a =\n";
cin >> a;
cout << "b =\n";
cin >> b;
cout << "c =\n";
cin >> c;
cout << "d =\n";
cin >> d;
cout << "S = " << heron(a, 1, 2) + heron(b, 2, 2.5) + heron(c, d, 2.5);
}
int main(){
solve();
}
DIM n AS INTEGER
INPUT "Введите кол-во студентов:", n
DIM studentYearsOld(1 TO n) AS INTEGER
DIM studentName(1 TO n) AS STRING
FOR i = 1 TO n
INPUT "Введите имя студента:", studentName(i)
INPUT "Введите год рождения студента:", studentYearsOld(i)
NEXT i
PRINT
FOR i = 1 TO n
PRINT "Студент "; studentName(i)
studentYrs = 2016 - studentYearsOld(i)
IF studentYrs < 18 THEN
PRINT "Лет до права голоса:"; 18 - studentYrs
ELSEIF studentYrs >= 18 THEN
PRINT "Студент уже имеет право голоса!"
PRINT
END IF
studentYrs = 0
NEXT i
Код валидный, если допустил ошибку во время переписывания - сообщите.