Forum » Programiranje » [Java]Naloge iz zank
[Java]Naloge iz zank
SkIDiver ::
Mam eno manjšo težavico pri dveh nalogah-ne vem kako se lotit zadeve. Gre pa zadeva o zankah oz loopih.
1. primer
Napiši program, ki prikaže iz česa je suma sestavljena od 1 do n za vsak n od 1 do 50. Program izpiše 1,3(suma 1 in 2), 6(suma 1,2 in 3) in tako naprej.
Izpis naj bi izgledal nekako takole:
sum 1 = 1
sum 1+2=3
sum 1+2+3=6
sum 1+2+3+4=10
2. primer
Napiši program, ki izpiše vsako perfektno število od 1 do 1000. Perfektno število je suma, ki se deli z vsemi svojimi sestavnicami sume. Na primer 6 je perfektno število, ker se deli z 1, 2 in 3.
1. primer
Napiši program, ki prikaže iz česa je suma sestavljena od 1 do n za vsak n od 1 do 50. Program izpiše 1,3(suma 1 in 2), 6(suma 1,2 in 3) in tako naprej.
Izpis naj bi izgledal nekako takole:
sum 1 = 1
sum 1+2=3
sum 1+2+3=6
sum 1+2+3+4=10
2. primer
Napiši program, ki izpiše vsako perfektno število od 1 do 1000. Perfektno število je suma, ki se deli z vsemi svojimi sestavnicami sume. Na primer 6 je perfektno število, ker se deli z 1, 2 in 3.
OwcA ::
Osnovna ideja je pri obeh nalogah enaka. Uporabiti moraš gnezdeno zanko. Zunanja (recimo da tu uporabimo števec i) gre od 1 do n, notranja (števec j) pa od 1 do i.
Pri drugi nalogi, v kolikor nimaš kakšne boljše (matematične) ideje, na vsakem koraku še malo pofiltriraš.
Pri drugi nalogi, v kolikor nimaš kakšne boljše (matematične) ideje, na vsakem koraku še malo pofiltriraš.
Otroška radovednost - gonilo napredka.
SkIDiver ::
Je mogoče možna kakšna elegantnejša rešitev teh if zank? Logični operatorji ne potegnejo pr tej zadevi al jih pa jz narobe uporabljam?
Zadeva pa more bit brez arrays, ker delam po knigi in ta šele sledijo!
Zadeva pa more bit brez arrays, ker delam po knigi in ta šele sledijo!
public class StringVowels{ public static void main(String[] args){ String volwel="Event Handlers is dedicated to making your event a most memorable one."; int count=0; char cha='0'; for(int i=0;i<volwel.length();i++){ cha=volwel.charAt(i); if(cha=='a') count++; if(cha=='e') count++; if(cha=='a') count++; if(cha=='i') count++; if(cha=='o') count++; if(cha=='u') count++; if(cha=='A') count++; if(cha=='E') count++; if(cha=='I') count++; if(cha=='O') count++; if(cha=='U') count++; } System.out.println("Number of volwel is "+count); } }
Zgodovina sprememb…
- spremenil: SkIDiver ()
kopernik ::
Lahko popraviš takole (pazi, ni to nek biser optimizacije ):
public static void main(String[] args){ String vowel="Event Handlers is dedicated to making your event a most memorable one."; vowel = vowel.toLowerCase(); int count=0; for(int i=0;i<vowel.length();i++){ char c = vowel.charAt(i); if("aeiou".indexOf(c) != -1) { count++; } } System.out.println("Number of volwel is "+count);
SkIDiver ::
Mam še dve pikantne.
Prva naj bi izpisovala števila takole;
1
2 3
4 5 6
7 8 9 10
....itd
Ampak men nekako ne gre in mi izpisuje takole. Ne sanja se mi od vraga kako povečat ustrezno zornjo mejo in spodnjo;
1
2 3
3 4 5
4 5 6 7
5 6 7 8 9
....itd
In druga težava o kateri se mi pa bore malo sanja. Matematika
Izračunaj vrednosti funkcij cos x in (1+x)^(1/4).
Ustrezni vrsti za ti funkciji sta:
Prva naj bi izpisovala števila takole;
1
2 3
4 5 6
7 8 9 10
....itd
Ampak men nekako ne gre in mi izpisuje takole. Ne sanja se mi od vraga kako povečat ustrezno zornjo mejo in spodnjo;
1
2 3
3 4 5
4 5 6 7
5 6 7 8 9
....itd
public class Stevila{ public static void main(String[] args){ int x=2; int n=1; int m; for(int y=0;y<9;++y){ for(int i=n;i<x;++i){ System.out.print(i+" "); } System.out.println(); x=x+2; n=n+1; } } }
In druga težava o kateri se mi pa bore malo sanja. Matematika
Izračunaj vrednosti funkcij cos x in (1+x)^(1/4).
Ustrezni vrsti za ti funkciji sta:
cos x = 1-(x^2/2!)+(x^4/4!)-(x^6/6!)+...+(-1)^n*(x^(2n)/(2n)!)+/-... |x|<"neskončno" in (1+x)^(1/4) = 1+(1/4)*x-(1*3/4*8)*x^2+(1*3*7/4*8*12)*x^3+(1*3*7*11/4*8*12*16)*x^4+... |x|<=1
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Pomoč pri sestavi algoritmaOddelek: Programiranje | 9326 (8157) | mihy11 |
» | programiranje krožek(pomoč)Oddelek: Pomoč in nasveti | 2757 (1745) | Marat |
» | [Python] Weighted randomOddelek: Programiranje | 1045 (885) | FrEaKmAn |
» | [algoritem] računanje vsoteOddelek: Programiranje | 2450 (2032) | vres.ales |
» | Problemi pri C++ programiranju...Oddelek: Programiranje | 3901 (3376) | George |