1. Napisati program za koji će za uneseni prirodni broj ispisati njegov najveći neparni djelilac.
( primjer:za unos broja a=24 najveći neparni djelilac je broj3)
#include<iostream>
using namespace std;
int main(){
int a;
cin>>a;
//Provjeravamo brojeve od polovine a pa dole jer veci od polovine nisu djeljivi
for(int i=(a/2);i>0;i--){
if((a%i==0)&&(i%2!=0)){
cout<<i<<endl;
break;
}
}
system("PAUSE");
return 0;
}
2. Napisati program koji će pronaći i ispisati na ekran koliko ima peterocifrenih brojeva kod kojih je suma zadnje 4 cifre jednaka prvoj cifri.
#include <iostream>
using namespace std;
main()
{
long int i;
int cf[6],br=0;
for (i=10000; i<100000; i++) //petlja koja vrti sve 5-cifrene br.
{
long int temp=i;
for (int j=5; j>0; j--) //petlja u kojoj izdvajamo cifre broja
{
cf[j]=temp%10; //uzimamo zadnju cifru broja i spremamo je u niz
temp/=10; //"odsjecamo" zadnju cifru da bi mogli naći sledeću
}
int sum=cf[2]+cf[3]+cf[4]+cf[5]; //suma zadnje 4 cifre
if (cf[1]==sum) //ako je suma jednaka prvoj cifri
{ //ispisuje se taj broj
cout << i << endl; //a brojač se uvećava za 1
br++;
}
}
cout << "br=" << br << endl; //ispis brojača
system ("pause");
return 0;
}
3. Napisati program koji ispisuje broj koji ima najviše djelioca u datom intervalu. Potrebno je i da program ispiše broj djelioca tog broja.
Npr. ukoliko za interval unesemo brojeve 2 i 8 izlaz treba da bude da je to broj 6 i da taj broj ima 4 djelioca.
ulaz izlaz:
2 8 6(4)
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int a,b,i,j,c,s=0,g=0;
cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
for (i=a; i<=b; i++)
{
c=0;
for (j=1; j<=i; j++)
if (i%j==0) c++;
if (c>s) {s=c; g=i;}
}
cout<<"Najvise djeloca ima broj "<<g<<"("<<c<<")"<<endl;
system("Pause");
return 0;
}
( primjer:za unos broja a=24 najveći neparni djelilac je broj3)
#include<iostream>
using namespace std;
int main(){
int a;
cin>>a;
//Provjeravamo brojeve od polovine a pa dole jer veci od polovine nisu djeljivi
for(int i=(a/2);i>0;i--){
if((a%i==0)&&(i%2!=0)){
cout<<i<<endl;
break;
}
}
system("PAUSE");
return 0;
}
2. Napisati program koji će pronaći i ispisati na ekran koliko ima peterocifrenih brojeva kod kojih je suma zadnje 4 cifre jednaka prvoj cifri.
#include <iostream>
using namespace std;
main()
{
long int i;
int cf[6],br=0;
for (i=10000; i<100000; i++) //petlja koja vrti sve 5-cifrene br.
{
long int temp=i;
for (int j=5; j>0; j--) //petlja u kojoj izdvajamo cifre broja
{
cf[j]=temp%10; //uzimamo zadnju cifru broja i spremamo je u niz
temp/=10; //"odsjecamo" zadnju cifru da bi mogli naći sledeću
}
int sum=cf[2]+cf[3]+cf[4]+cf[5]; //suma zadnje 4 cifre
if (cf[1]==sum) //ako je suma jednaka prvoj cifri
{ //ispisuje se taj broj
cout << i << endl; //a brojač se uvećava za 1
br++;
}
}
cout << "br=" << br << endl; //ispis brojača
system ("pause");
return 0;
}
3. Napisati program koji ispisuje broj koji ima najviše djelioca u datom intervalu. Potrebno je i da program ispiše broj djelioca tog broja.
Npr. ukoliko za interval unesemo brojeve 2 i 8 izlaz treba da bude da je to broj 6 i da taj broj ima 4 djelioca.
ulaz izlaz:
2 8 6(4)
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
int a,b,i,j,c,s=0,g=0;
cout<<"a=";
cin>>a;
cout<<"b=";
cin>>b;
for (i=a; i<=b; i++)
{
c=0;
for (j=1; j<=i; j++)
if (i%j==0) c++;
if (c>s) {s=c; g=i;}
}
cout<<"Najvise djeloca ima broj "<<g<<"("<<c<<")"<<endl;
system("Pause");
return 0;
}