1. (Zadatak sa regionalnog takmičenja) Učitati jednodimenzionalni niz i ustanoviti da li je bilo koji član učitanog niza jednak prvom članu pomenutog niza i ispisati koliko ih ima jednakih prvom članu niza.
Primjer:
1) Dat je niz: 7 15 35 65 123 7 390 998 7 5
U datom nizu ima dva i to su šesti i deveti član niza koji se ponavlja, a jednak je prvom članu.
2) Ulaz: 5 (6 3 6 6 4) Izlaz: 2
2. (Zadatak sa regionalnog takmičenja) Napisati program koji učitava N brojeva, a zatim sipisuje samo one koji su veći od aritmetičke sredine učitanih brojeva.
Primjer:
N=5
Unesite brojeve: 5 10 2 8 20 Sredina: 9 Veći su: 10 20
3. (Zadatak sa regionalnog takmičenja) Za dva različita prirodna broja kažemo da su prijateljski ako je zbir svih djelitelja drugog broja jednak prvom broju. Takvi su npr. brojevi : 220 i 284 (zbir svih djelitelja broja 220 je : 1+2+4+5+10+11+20+22+44+55+110=284, dok je zbir svih djelitelja broja 284 jednak: 1+2+4+71+142=220). Napisati program koji će za zadane brojeve provjeriti da li su prijateljski, te naći ukupan broj njihovih djelitelja.
Ulazni podaci:
- prirodan broj N (1<=N<=30000)
- prirodan broj M(1<=M<=30000)
Izlazni podaci:
- test:
· „Brojevi su prijateljski“ – ako su N i M prijateljski brojevi ili
· „Brojevi nisu prijateljski“ – ako N i M nisu prijateljski brojevi.
· Potrebno je i ispisati koliko je ukupno zajedničkih djelitelja oba broje (svaki djelitelj brojimo samo jednom
Napomena: među djelitelje nekog broja ne ubrajamo samo taj broj.
Primjeri:
1.
12
20
Brojevi nisu prijateljski
Broj djelitelja: 7
Zbir svih djelitelja broja 12 je 1+2+3+4+6=16, dakle brojevi nisu prijateljski. Djelitelji brojeva 12 i 20 su: 1,2,3,4,5,6 i 10, pa ih ukupno ima 7
2.
1184
1210
Brojevi su prijateljski
Broj djelitelja: 20
3.
2130
1950
Brojevi nisu prijateljski
Broj djelitelja: 30
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int n,m,i,sn=0,sm=0,j=0;
cin>>n;
cin>>m;
for (i=1; i<=n/2; i++)
if (n%i==0) sn=sn+i;
for (i=1; i<=m/2; i++)
if (m%i==0) sm=sm+i;
if ((sn==m)&&(sm=n))
cout<<"Brojevi su prijateljski "<<endl;
else cout<<"Brojevi nisu prijateljski "<<endl;
if (n>m) for (i=1; i<=n/2; i++)
{if ((n%i==0)||(m%i==0)) j++;}
else for (i=1; i<=m/2; i++)
{if ((n%i==0)||(m%i==0)) j++;}
cout<<"Broj djelitelja je "<<j<<endl;
system("Pause");
return 0;
}
Primjer:
1) Dat je niz: 7 15 35 65 123 7 390 998 7 5
U datom nizu ima dva i to su šesti i deveti član niza koji se ponavlja, a jednak je prvom članu.
2) Ulaz: 5 (6 3 6 6 4) Izlaz: 2
2. (Zadatak sa regionalnog takmičenja) Napisati program koji učitava N brojeva, a zatim sipisuje samo one koji su veći od aritmetičke sredine učitanih brojeva.
Primjer:
N=5
Unesite brojeve: 5 10 2 8 20 Sredina: 9 Veći su: 10 20
3. (Zadatak sa regionalnog takmičenja) Za dva različita prirodna broja kažemo da su prijateljski ako je zbir svih djelitelja drugog broja jednak prvom broju. Takvi su npr. brojevi : 220 i 284 (zbir svih djelitelja broja 220 je : 1+2+4+5+10+11+20+22+44+55+110=284, dok je zbir svih djelitelja broja 284 jednak: 1+2+4+71+142=220). Napisati program koji će za zadane brojeve provjeriti da li su prijateljski, te naći ukupan broj njihovih djelitelja.
Ulazni podaci:
- prirodan broj N (1<=N<=30000)
- prirodan broj M(1<=M<=30000)
Izlazni podaci:
- test:
· „Brojevi su prijateljski“ – ako su N i M prijateljski brojevi ili
· „Brojevi nisu prijateljski“ – ako N i M nisu prijateljski brojevi.
· Potrebno je i ispisati koliko je ukupno zajedničkih djelitelja oba broje (svaki djelitelj brojimo samo jednom
Napomena: među djelitelje nekog broja ne ubrajamo samo taj broj.
Primjeri:
1.
12
20
Brojevi nisu prijateljski
Broj djelitelja: 7
Zbir svih djelitelja broja 12 je 1+2+3+4+6=16, dakle brojevi nisu prijateljski. Djelitelji brojeva 12 i 20 su: 1,2,3,4,5,6 i 10, pa ih ukupno ima 7
2.
1184
1210
Brojevi su prijateljski
Broj djelitelja: 20
3.
2130
1950
Brojevi nisu prijateljski
Broj djelitelja: 30
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int n,m,i,sn=0,sm=0,j=0;
cin>>n;
cin>>m;
for (i=1; i<=n/2; i++)
if (n%i==0) sn=sn+i;
for (i=1; i<=m/2; i++)
if (m%i==0) sm=sm+i;
if ((sn==m)&&(sm=n))
cout<<"Brojevi su prijateljski "<<endl;
else cout<<"Brojevi nisu prijateljski "<<endl;
if (n>m) for (i=1; i<=n/2; i++)
{if ((n%i==0)||(m%i==0)) j++;}
else for (i=1; i<=m/2; i++)
{if ((n%i==0)||(m%i==0)) j++;}
cout<<"Broj djelitelja je "<<j<<endl;
system("Pause");
return 0;
}