В конце программы есть команда sleep(), чем больше в ней значение, тем меньше скорость шариков. Также её можно просто убрать, тогда скорость будет максимальной.
1) зачем тебе передавать в функцию флоат, а потом это кастовать к даблу, когда можно сразу передавать дабл
2) на кой тебе setlocale в этой задаче
3) почему ты пытаешься считать из консоли 7 аргументов, когда в задаче дается лишь 4
4) много лишних переменных, да еще и разных типов, которые ты пытаешься использовать в одних выражениях
5) Ты вообще понимаешь почему в этой задаче требуется прописать функцию для нахождения площади треугольника? Если да, то почему ты каждый раз вызываешь функцию подсчета площади от одних и тех же трех отрезков, да еще и не образующих треугольник...
Uses GraphABC;
const MaxShar=50;
type shar = record
x,y:integer;
dx,dy:integer;
end;
var i:byte;
x,y,r:integer;
shars: array[1..MaxShar] of shar;
begin
randomize;
setwindowsize(500,500);
centerwindow;
r:=10;
setpenwidth(3);
for i:=1 to MaxShar do
with shars[i] do
begin
x:=7+r+random(500-2*r-14);
y:=7+r+random(500-2*r-14);
dx:=random(8) + 1;
dy:=random(8) + 1;
end;
lockdrawing;
repeat
clearwindow;
for i:=1 to MaxShar do
with shars[i] do
begin
x:=x+dx;
if (x+r+dx>=493) or (x-r+dx<=7) then dx:=-dx;
y:=y+dy;
if (y+r+dy>=493) or (y-r+dy<=7) then dy:=-dy;
setpencolor(clBlue);
setbrushcolor(clBlue);
circle(x,y,r);
end;
setpencolor(clBlack);
setpenwidth(3);
moveto(5,5);
lineto(495,5);
lineto(495,495);
lineto(5,495);
lineto(5,5);
sleep(1);
redraw;
until false;
end.
Примечание:
В конце программы есть команда sleep(), чем больше в ней значение, тем меньше скорость шариков. Также её можно просто убрать, тогда скорость будет максимальной.
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();
}