Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Stránky: 1
Prosím o radu, mám sestavit funkci, která mi vypíše, jaké prvky v poli nemají stejnou hodnotu jako index daného prvku (tzn. že když mám 1,3,2,4,5 tak by mi to mělo vypsat čísla 3 a 2) a vypsat jejich počet. Jsem momentálně trošku ztracen ve block([]....) a cyklu for.....:(
Díky moc!
Offline
Zdravím,
Mám napsat funkci, -> s funkcí asi problém nemáš.
Cyklus for: zde musíš projet všechny položky pole od prvního členu po poslední.
Použiješ proměnou :
for index:1 thru length(Array) do ( ... tělo cyklu ... )
Funkce length vrací v tomto případě počet položek daného pole.
Do těla cyklu dáš podmínku, která bude porovnávat rovnost/nerovnost zkoušené položky pole s indexem:
if is(Array(index)=index) then ( ... )
Porovnání na nerovnost se píše takto:
if is(Array(index)#index) then ( ... )
No a pokud bude podmínka splněná budeš inkrementovat celkový čítač:
Pocet: Pocet + 1
a vypíšeš položku:
print(index)
No a na začátku si musíš proměnou vynulovat, takto bude použita jako lokální:
block([Pocet:0], ... )
Jednotlivé příkazy uvnitř bloku jsou odděleny čárkou.
A na konci si opět příkazem print necháš vypsat nalezených hodnot.
Teď už to dáš dohromady?
Offline
Offline
Stránky: 1