Hirdetés
- Akciófigyelő - Epic Store ajándékozás 6. nap: Dredge
- 2024 - Békés, boldog karácsonyt kívánunk minden olvasónknak!
- Akciófigyelő - Epic Store ajándékozás Dark and Darker: Legendary Status
- Jövőre érkezik az új Agatha Christie: Death on the Nile játék
- Alig két nap múlva konzolokra is befut a Star Trek Legends
Új hozzászólás Aktív témák
-
daninet
veterán
válasz DrojDtroll #4417 üzenetére
Igen, meg az első homingnál lehetne az időt mérni, mert ugye mindig máskor kapcsolom ki. Vannak elméleti ötleteim. Ezt egy arduinonál még lehet megoldanám, csak itt bőven meghaladja a képességeimet.
Azt is elfogadom válasznak, ha nem lehet ennyivel megoldani, valamiért azt várom picit lesz valaminegysoros akármi amit oda berakhatok és menni fog. De azt is elfogadom válasznak ha nincs ilyen.Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
válasz dabadab #4415 üzenetére
Elvileg C++, igen (70%-ban, 30-ban C). De javíts ki ha nem, átrakom másik topikba. Marlin firmware-t akarom módosítani. Volt már itt téma, akkor te segítettél, de az igényeim alacsonyabbak voltak , csak újra akartam indítani a sorozatot, működött is.
Szóval alant a kódban a random(2,10); függvényt használtam, de mint írtátok, ez ugyanazt a sorozatot generálja mindig, nekem ez nem jó.
Hogy értsétek, erről a homokba rajzolós asztalról van szó. SD kártyán vannak a minták, indításnál az auto0.g fájl tartalmazza a homing sequence-t, a többi auto1.g - auto9.g a mintákat amiket rajzol. Mivel ezek órákig mennek nem poén, ha mindig bekapcsolom és ugyanazzal indul. Jó lenne, ha random választana egy számot 2-10ig (függvényben alul van egy x-1) és akkor valamelyik mintát elkezdené rajzolni.
Kontextusnak annyi, hogy elkezdi beolvasni az SD kártya tartalmát a program, és ha nincs ott egy fájl amit áramkimaradás esetén akkor kezdi a kód szerint az auto0.g-tmod: elég rossz itt a kódformázás, itt egy pastebin link: https://pastebin.com/zFwjc0y9
#if DISABLED(NO_SD_AUTOSTART)
/**
* Run all the auto#.g files. Called:
* - On boot after successful card init.
* - From the LCD command to Run Auto Files
*/
void CardReader::autofile_begin() {
autofile_index = 1;
(void)autofile_check();
}
/**
* Run the next auto#.g file. Called:
* - On boot after successful card init
* - After finishing the previous auto#.g file
* - From the LCD command to begin the auto#.g files
*
* Return 'true' if an auto file was started
*/
bool CardReader::autofile_check() {
if (!autofile_index) return false;
if (!isMounted())
mount();
else if (ENABLED(SDCARD_EEPROM_EMULATION))
settings.first_load();
// Don't run auto#.g when a PLR file exists
if (isMounted() && TERN1(POWER_LOSS_RECOVERY, !recovery.valid())) {
char autoname[10];
sprintf_P(autoname, PSTR("/auto%c.g"), '0' + autofile_index - 1);
if (fileExists(autoname)) {
cdroot();
openAndPrintFile(autoname);
// Generate a random number between 2 and 10
int randomNumber = random(2,10);
autofile_index = randomNumber;
//
return true;
}
}
autofile_cancel();
return false;
}
#endif
[ Szerkesztve ]
Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
Sziasztok!
Teljesen noob kérdés:
Random int számot kellene generálnom egy mikrokontrolleren, de nincs órája és limitált a memória. Szóval kóddal kellene megoldalni anélkül, hogy behívok bármilyen library-t.
Végignéztem a keresőben egy csomó találatot de mindenhol az órával variálnak. Nekem ugyanez kóddal kell, valami memória hash-elős akármilyen trükkel.
Hogyan oldható ez meg?Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
válasz jattila48 #4353 üzenetére
igen
dabadab: igenmindenkinek köszi, működik.
Egyébként ha valaki érdekel egy ilyen homokba rajzasztal playlistjét indítja majd a kód, a 9 fájl darabja 30-60perc egymás után rajzolódik a homokba.Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
Sziasztok!
Valaki validálná nekem, hogy az alábbi kód helyes? Azt akarom, ha ez a loop eléri az auto9.g sorszámot ugorjon vissza nullára (vagyis a számlálóban 1-re amiből kivonunk egyet).
Ezek a fájlok majdnem 6 óráig futnak ezért szeretném tudni a hosszú teszt előtt, hogy amit belekontárkodtam működikvoid CardReader::autofile_begin() {
autofile_index = 1;
(void)autofile_check();
}
bool CardReader::autofile_check() {
if (!autofile_index) return false;
if (!isMounted())
mount();
else if (ENABLED(SDCARD_EEPROM_EMULATION))
settings.first_load();
// Don't run auto#.g when a PLR file exists
if (isMounted() && TERN1(POWER_LOSS_RECOVERY, !recovery.valid())) {
char autoname[10];
sprintf_P(autoname, PSTR("/auto%c.g"), '0' + autofile_index - 1);
if (fileExists(autoname)) {
cdroot();
openAndPrintFile(autoname);
if (autofile_index = 10)
autofile_index = 1;
else if (autofile_index < 10)
autofile_index++;
return true;
}
}
autofile_cancel();
return false;
}
[ Szerkesztve ]
Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
Hát, köszönöm a sok hozzászólást, fogalmam sincs mi a jó vélemény
Tanulok tovább
Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
nos kész a dobókocka játék, kb 2 hetet tanultam egy mobilapplikációból a c++ -t ezt hoztam ki. Azóta utánanéztem pár dolognak, de ezt újra már nem kezdem.
-eleinte kicsit inkonzisztensen használtam a printf()-et, annak valamiért jobban tetszik a syntax-ja, de abbahagytam
-goto-val ugrálok előre hátra a kódban (vissza a menühöz pl) azóta olvastam ez nemjó, értem miért bár nem teljesen tudom mi válthatja ki
-nem gyűjtöttem semmi szemetet
-nem használtam semmiféle class-t és objectet, azt még nem nagyon értem, illetve kellene egy komplexebb feladat ahol értelmet nyer
-ide illeszd be a kommentjeid[ Szerkesztve ]
Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
válasz PandaMonium #3934 üzenetére
Fogalmam sincs mi tortenik, szoval a kodban az elso ilyen megallast nem ertelmezi legyen az barhol. Szoval beraktam az elejere egyet, atugorja, utana jo. Ha nem megy esszel oldd meg erovel
[ Szerkesztve ]
Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
Azt mondjátok már meg ebben a loop-ban miért nem áll meg gombnyomáshoz az első körnél, csak a másodiknál.
for (int i = 0; i < playerz; i++)
{
for (int x = 0; x < 2; x++)
{
cout << names.at(i) << " " << x + 1 << ". dobasa!";
do
{
cout << "\nGuritashoz nyomj Entert...";
} while (cin.get() != '\n');
srand(time(0));
cout << "\nEredmeny: " << gurit();
cout << "\n\n";
}
}Miért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
-
daninet
veterán
Sziasztok!
kezdő téma, klasszik iskolapéldát akarom megoldani, dobókockás játék. Kb minden kész már, csak az elején statikus még,
először beadom a játékosok számát, majd be kellene irni a neveket, de c++ nem támogat int értéket array-nek, csak konstansot. Próbáltam keresni, de string-re nem láttam semmit, nyilván nem tudom mit keressek annyi kellene legyen az array mérete ahány a játékosok számaMiért vegyem meg, ha 3x annyiért, 3x annyi idő alatt megépíthetem? ´¯`·.¸¸.·´¯`·.¸><(((º>
Új hozzászólás Aktív témák
Hirdetés
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest