#include<stdio.h>
#include<stdlib.h>
int main()
{
//inicijacija broja - varijable
/*************************************************
Analiza koda
**************************************************/
//Dobro je poravnati velike zagrade jer onda znas odakle pocinje i gdje se zavrsava
//neka operacija
int oNu, sup, sun;
int sa, sap;
int sb, sbp;
int sc;
int * pONu = &oNu;
//Variable sup, sun, sa,sb,sc i pokazivac pONu nigdje e ne koriste
printf("Molimo unesite prirodan broj manji od 100: \n");
scanf(" %d", &oNu);
printf("\n Unijeli ste jednu jedan broj, a to je %d \n", oNu);
printf("Testiramo uslov iz zadatka, molimo strpljenje \n");
if(oNu<10)
{
printf("manje od 10\n");
switch(oNu%2)
{
case (1):
printf("Suma neparnih cifara je veca od sume parnih");
break;
case(0):
printf("Suma parnih cifara je veca od sume neparnih");
break;
}
}
//ovo se nemoze ovako napisati i proci ce svaki broj veci od 10
//znaci ovdje ce proci svi brojevi veci od 10
//dovljno je napisati oNu<100 jer oni manj od 10 ce proci kroz if ili prvi uslov
//tako da nece ovdje proci svakako
else if (9 < oNu < 100)
{
printf("manje od 100\n");
/* sledeci kod ispod nemogu bas skontati cemu sluzi ali cu pokusati
da ga pojasnim sta radi:
sa = oNu%10;
variabla sa sadrzi ostatak od dijeljenja sa 10 unesenog nam broja
Posto ti je bila namjera napraviti funkciju koja ima uneseeni broj manji od sto
tj. ima samo 2 cifre onda taj broj kada dijelimo sa 10 prakticno dobijamo ostatak
cfru jedinica ili prvu cifru.
sap = sa%2;
variabla sap sadrziv ostatak od dijeljenje variable sa sa brojem 2.
Ovdje treba napomenuti da bi rezultat bio isti i da smo uzeli uneseni broj
pa je prakticno sa variable nepotrebna
bilo koja cifra deetica nema oticaja na ostatak od dijeljenja sa 2.
sb = (oNu-sa)/10;
sb variabla sadrzi unesenu vrijednos umanjenu za ostatak od dijeljenja sa 10 a to jest njenu prvu
cifru i dijeljeno sa 10
To bi u stvarnosti znacilo dadobijamo cifru desetica a to
mozemo dobiti dijeljenje jer je variabla int a to je cjelobrojna vrijednost
znaci samo da podijelimo broj sa 10 i dobit cemo rezultat
*/
printf("desetice %d\n",oNu/10);
sa = oNu%10;
sap = sa%2;
sb = (oNu-sa)/10;
sbp = sb%2;
/*Mislim da dalje netreba analizirati jer je mnogo iskomlikovano
Imamo 2 broja za koje znamo jesu li parni ili neparni
Ukoliko je sap 0 znaci da jecifra jedniocica parna
ili (else) ako nije onda je neparna
U oba slucaja se zbarajaju u neke variable koje se mogu zvati:
int zbir_parnih, zbir_neparnih;
Isto je i za drugu cifr desetica
sada kad imamo 2 zbira samo treba uporediti koji je veci sa jednim ifom.
*/
if(sap==1 && sbp==1)
{
printf("Suma neparnih cifara je veca od sume parnih");
}
else if (sap==0 && sbp==0)
{
printf("Suma parnih cifara je veca od sume neparnih");
}
else
{
if (sap==0 && sbp==1 && sa>sb)
{
printf("Suma parnih cifara je veca od sume neparnih");
}
else if (sap==1 && sbp==0 && sa<sb){
printf("Suma parnih cifara je veca od sume neparnih");
}
else if (sap==0 && sbp==1 && sa<sb) {
printf("Suma neparnih cifara je veca od sume parnih");
}
else if (sap==1 && sbp==0 && sa>sb){
printf("Suma neparnih cifara je veca od sume parnih2");
}
else
{
printf("nešto ne valja");
}
}
}
return 0;
}