Adott egy Lego EV3 tipusú robot, és egy feladat, amiszerint egy kört kellene rajzolni. A robotnál a két kerék között pontossan helyezkedik el egy ceruza és kikellene számolni mennyit forduljon a motor, hogy kört tudjak vele rajzolni. (? )
A tengelytáv, a kerék átmérő és a rajzolandó kör sugara segítségével kellene ezt mind kiszámítani, készítettem is egy programot, de valamiért nem münködik...
Az elve az, hogy kiszámolom a kerékkerületét, majd a megadott sugár alapján a rajzolandó kör kerületét is ami alapján könnyen kitudom számolni hogy mennyi fordulat kell hogy legyen = ez van akkor amikor egyenlő a tengelytáv fele és a kör sugara
Ám amikor közbejön az, hogy nagyobb kör kell hogy legyen mint amekkora a tengelytáv/2 akkor már a 2. motor fordulatát is számolni kell, ezt pedig ugy oldanám meg, hogy kivonom a rajzolandó kör sugarából kivonom a tengelytáv/2-őt majd a ugyanúgy mint az előzőnél aránytényezővel kiszámolom a fordulatokat
Egy kis jelmagyarázat:
Bm-balmotor
Jm-jobb motor
R-rajzolandó kör átmérő
Kr-kerék átmérő
korkerulet- rajzolandó kör kerülete
kerekkerulet- kerék kerülete
Lehet kicsit bonyolultan irtam le, más lehetőségeket is szivessen meghallgatok
esetleg ha valakinek van kész programja, azt is szivessen fogadnám
köszi :D
#include <iostream>
using namespace std;
int main()
{
int Bm, Jm, R, Kr, korkerulet, kerekkerulet, c, d, f, kettengely, g, h ;
cout << "Kör átmérő \n";
cin >> R
cout << "Kerék átmérő \n";
cin << Kr
cout << "Két kerék közti táv";
cin >> d;
korkerulet = R * 2 * 3,14;
kerekkerulet = Kr * 2 * 3,14;
kettengely = d * 2 * 3,14;
c = 1 / kerekkerulet;
{
if R = d/2;
f = c * R;
cout << "A bal motornak ennyit kell fordulnia: ", << f "\n";
cout << " A jobb motornak ennyit kell fordulnia= 0";
else
Bm = c * R;
Jm = kettengely * c
cout << "A bal motornak ennyit kell fordulnia: ", << Bm "\n";
cout << " A jobb motornak ennyit kell fordulnia= 0", << Jm;
}
system"pause>>void";
return 0;
}
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Amúgy így ránézésre ebbe van vagy 100 szintakis hiba, így mondjuk nem is túl meglepő.
Ez most valami rossz vicc akar lenni?
Mert azt hamarabb elhiszem, minthogy ezt komolyan gondoltad.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Ha a kor átmérője kisebb mint a tengelytáv/2 akkor nem lehet
Egyebkent:
Legyen r a kör átmérője
Benső kerék (r-tengely/2)*2*pi
Külső kérek (r+tengely/2)*2*pi
És ezeket osztod a kerék kerületevel
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!