Search the Community
Showing results for tags 'array'.
Found 2 results
-
Zdravím, Do školy potrebujem urobiť určitu funkciu ktorú už mám hotovú (jej určenie a fungovanie je nepodstatné) a funguje sáma o sebe ak spravím výpis priamo v nej tak je výpis správny. Problém nastáva ak je riadne zavolana z iného miesta (main) v tedy je výpis uplne zvlaštný až náhodny. int special_numbers(const int input_array[], const int array_size, int result_array[]){ int totally = 0; for (int i = 0; i < array_size; ++i) { int temp_sum = 0; for (int x = i+1; x < array_size; ++x) temp_sum += input_array[x]; if(temp_sum < input_array[i]){ result_array[i] = input_array[i]; printf("Súčet %d je menší ako %d = (JE ŠPECIALNE) [ %d ] \n", temp_sum, input_array[i], result_array[i]); //Tento výpis je správny totally ++; } } return totally; } Výpis funkcie je: Volanie (v main): int input_array[] = {16,17,4,3,5,2}; int result_array[6]; int count = special_numbers(input_array, 6, test_array); for(int i = 0; i < count; i++){ printf("%d ", test_array[i]); } výsledok printu je napríklad: 0 17 993648864. Ale má byť: 17 5 2 Pritom hore printf priamo vo funkcií ukazuje v poslednej časti výpis .."[ %d ] \n', ..., result_array); správne. Ako to opraviť? Podmienka je že nesmú byť použité globalne premenné. Ďakujem.
-
Ahojte a zdravím všechny, chtěl bych vás zde poprosit o malou pomoc. Přes příkaz /setwarp na SAMP serveru si vytvořím warp (údaje o pozici a příkaz se ukládá přes MYSQL do databáze) a potřebuju přes /warps tyto warpy vypsat. Zezačátku se mi povedlo warpy vypsat jednotlivě, tzn. jeden warp - jeden řádek, tohle ale nechci. Chtěl bych warpy nacyklovat ->vložit do pole a pak je vypsat jako jeden text. Můj kód zatím vypadá takto samozřejmě s errorem a netuším jak dál: mysql_query(Database, "SELECT * FROM `samp_warps` ORDER BY `warp_command` ASC"); new rowCount; //vytvoření proměnné pro uložení celkového počtu warpů cache_get_row_count(rowCount); //vytáhnutí počtu warpů a zapsaní do proměnné rowCount new warps[MAX_STRING] = {}; //vytvoření prázdného pole (MAX_STRING je definován) for(new i = 0; i <= rowCount; i++ ) //začátek cyklu pro vytáhnutí jednotlivého warpu z databáze { new mysqlSelectWarp[65]; format(mysqlSelectWarp, sizeof(mysqlSelectWarp), "SELECT * FROM `samp_warps` WHERE id='%i'", i++); mysql_query(Database, mysqlSelectWarp); //dotaz pro jeden WARP new warpName[20]; cache_get_value_name(i, "warp_command", warpName, sizeof(warpName)); //vytáhnutí sloupce s příkazem (jméno warpu) warps[i] = warpName; //tuto původně jsem myslel, že by fungovalo jako vložení stringu do proměnné a zde je error: error 006: must be assigned to an array } Je tedy možné nějak toto zprovoznit? Děkuji předem