Se citeste un sir de n numere naturale.Sa se determine numarul de aparitii al celui mai mare numar prim din sir. eu am facut asa:
#include
using namespace std;
unsigned int n,k,max1=0,i,nr_citite,nr_aparitii,prim,continua;
int main()
{
cout<<"dati n=";
cin>>n;
nr_citite=0;
nr_aparitii=0;
continua=1;
while(continua==1)
{
cin>>k;
nr_citite=nr_citite+1;
prim=1;
for(i=2;i<=k-1;i++)
{
if(k%i==0)
prim=0;
}
if((k>=max1)&&(prim==1))
{
max1=k;
nr_aparitii++
}
if(nr_citite==n)
continua=0;
}
cout<<"numarul de aparitii al celui mai mare numar prim din sir este = "<
return 0;
}
DlakWanted:
edit:cout<<"..."<<nr_aparitii
Răspunsuri la întrebare
Răspuns de
1
Mai gandeste-te la numarul de aparitii al elementului maxim din sir
Răspuns de
0
Asa arata mai bine:
#include <iostream>
#include <math.h>
using namespace std;
bool CheckPrime(int Nr);
int main(){
int n=0,BigPrime=0,Aparitii=0;
do{
cin>>n;
if(CheckPrime(n) && n>BigPrime) {
BigPrime=n;
Aparitii=0;
}
if(n==BigPrime) Aparitii++;
}while(n!=0);
system("pause");
return 0;
}
bool CheckPrime(int Nr){
bool IsPrime=true;
if(Nr!=2){
if(Nr%2!=0){
for(int x=3;x<=sqrt((double)Nr);x+=2){
if(Nr%x==0) IsPrime=false;
}
return IsPrime;
}else{
return false;
}
}else{
return true;
}
}
#include <iostream>
#include <math.h>
using namespace std;
bool CheckPrime(int Nr);
int main(){
int n=0,BigPrime=0,Aparitii=0;
do{
cin>>n;
if(CheckPrime(n) && n>BigPrime) {
BigPrime=n;
Aparitii=0;
}
if(n==BigPrime) Aparitii++;
}while(n!=0);
system("pause");
return 0;
}
bool CheckPrime(int Nr){
bool IsPrime=true;
if(Nr!=2){
if(Nr%2!=0){
for(int x=3;x<=sqrt((double)Nr);x+=2){
if(Nr%x==0) IsPrime=false;
}
return IsPrime;
}else{
return false;
}
}else{
return true;
}
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Fizică,
9 ani în urmă
Limba română,
9 ani în urmă
Engleza,
9 ani în urmă