Aktív témák
-
Jester01
veterán
Mi az hogy egyszerre? Egy procis (nem HT vagy dualcore) gépen sosem fog egyszerre futni. Két procis gépen futhatnak párhuzamosan, de semmi garancia nincs arra, hogy egyszerre végeznek.
Szóval pl. definiálni kellene szinkronizációs pontokat ahol a két ciklus bevárja egymást.
[Szerkesztve]Jester
-
clayman
aktív tag
Gondolom nem kívánod megoldani több szálon, minden iterációnál egy szemaforral, és nem is egymásba ágyazott ciklusra gondoltál így marad a következő megoldás:
Ha volt:
const int L1 = 666;
const int L2 = 1337;
for(int a=0;a<L1;++a) { első ciklus kódja }
for(int b=0;b<L2;++b) { második ciklus kódja }
Ezekből lesz:
if( L1<=L2) {
int a, b;
for(a=0,b=0;a<L1;++a,++b) { összes cikluskód }
for(;b<L2;++b) { második ciklus kódja }
} else {
int a, b;
for(a=0,b=0;b<L2;++a,++b) { összes cikluskód }
for(;a<L1;++a) { az első ciklus kódja }
}
Vagy ha úgy jobban tetszik:
int a, b;
for(a=0,b=0;a<L1 && b<L2;++a,++b) { összes cikluskód }
for(;a<L1;++a) { az első ciklus kódja }
for(;b<L2;++b) { második ciklus kódja }
Persze ha L1 == L2 akkor sokkal 1xűbb:
for(int a=0,b=0;a<L1;++a,++b) { összes cikluskód } -
Jester01
veterán
-
föccer
nagyúr
Miért nem úgy csinálod, hogy négy, egymásra merőleges szakaszt rajzolsz? Mintha ceruzával rajzolnál. Akkor nem kell egyszerre vezérelni a motorokat, hanem egyszer az egyiket <vízszintes_balra> utánna függőleges<lefele> utánna vízszintes jobba, majd fel.
És megvan a négyzet
ps: most néztem, hogy ki is kell tölteni a négyzetet. Akkor boccsesz, nem szoltam
[Szerkesztve]Építésztechnikus. Építőmérnök.
-
shev7
veterán
es ez a lezer hogy mukodik? mire vetit ki? Nem lehet, hogy kirajzolja a negyzetet, csak nem ''latod''? Bocs, ha hulye a kerdes, de elvileg jester01 kodja az csinalja ami kell neked.
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
Tyrael
senior tag
>>>>>>>>>>>>>>>>>>>>>>V
V<<<<<<<<<<<<<<<<<<<<<<
>>>>>>>>>>>>>>>>>>>>>>V
V<<<<<<<<<<<<<<<<<<<<<<
>>>>>>>>>>>>>>>>>>>>>>V
V<<<<<<<<<<<<<<<<<<<<<<
>>>>>>>>>>>>>>>>>>>>>>V
V<<<<<<<<<<<<<<<<<<<<<<
>>>>>>>>>>>>>>>>>>>>>>V
<<<<<<<<<<<<<<<<<<<<<<<
Így nem lenne jó a rajzolás?
Amúgy nincs c-ben valami alap függvény a szabályos alakzatok rajzolásához?
Szal mondjuk négyzet esetében megadod az egyik sarkát meg az oldal hosszát, és csókolom.
Meg esetleg valami szöget, hogyha elforgatva akarod.
Tyrael -
Jester01
veterán
Húha, ez akkor azt jelenti, hogy 1 impulzus és már kirajzolta a sort?
Vegyük észre, hogy ebben az esetben a rajzolás sebessége nem függ a programtól, vagyis szerintem így lehetetlen megcsinálni amit akarsz. Az egyik irányt rajzolhatod egy lépésben de a másikat muszáj fokozatonként csinálni.
for(y=0; y < magassag; y++)
{
/* y. sor rajzolása */
leptet(MOTOR_FUGGOLEGES, y); /* ez pozicionál a megfelelõ sorra */
leptet(MOTOR_VIZSZINTES, max); /* ez rajzolja a sort egyszerre */
}
Azt írd le légyszíves hogy melyik pillanatban milyen jelet kell kiadni, utána a programot már összerakjuk neked...
Tyrael megoldása:
int vege = 0; /* sor vegen vagy elejen allunk-e */
for(y=0; y < magassag; y++)
{
/* y. sor rajzolása */
leptet(MOTOR_FUGGOLEGES, y); /* ez pozicionál a megfelelõ sorra */
leptet(MOTOR_VIZSZINTES, vege ? 0 : max); /* ez rajzolja a sort egyszerre */
vege ^= 1; /* ugras a sor masik vegere */
}
[Szerkesztve]Jester
Aktív témák
- GTA VI
- Milyen NAS-t vegyek?
- Alkoholista nevelde
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Franciaországban nyit a Honor 200 Lite
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Világító alma helyett világító tok és szíj az almákra
- Jövedelem
- Rossz üzlet az EV-kölcsönzés
- Milyen videókártyát?
- További aktív témák...
- LG NanoCell 55NANO766QA Halvány píxel csík
- Philips 58PUS8545/12 1 ÉV GARANCIA Játék üzemmód
- Tyű-ha! HP EliteBook 850 G7 Fémházas Szuper Strapabíró Laptop 15,6" -65% i7-10610U 32/512 FHD HUN
- Bomba ár! HP EliteBook 840 G5 - i5-8G I 8GB I 128GB SSD I 14" FHD I HDMI I Cam I W10 I Gari!
- The Last of Us Part I Ps5