Informatică, întrebare adresată de fl0rin12flo, 9 ani în urmă

Sa se calculeze media aritmetica a numerelor prime din intervalul [a,b]
C++
p.s;vreau rezolvare pentru clasa a 9-a primul semestru!


fl0rin12flo: [a,b] intervalul!

Răspunsuri la întrebare

Răspuns de AntiEaglesDavids
2
#include<iostream>
#include<cmath>

bool estePrim(uint32_t numar)
{
    if(numar == 1 || numar == 0) return false;
    for(uint32_t divizor = 2; divizor <= std::sqrt(numar); ++divizor)
        if(numar % divizor == 0)
            return false;
    return true;
}

int main()
{
    uint32_t a, b, suma = 0, nrPrime = 0;

    std::cin >> a >> b;
    for(uint32_t numarCurent = a; numarCurent <= b; ++numarCurent)
        if(estePrim(numarCurent))
            suma += numarCurent, ++nrPrime;
    std::cout << static_cast<float>(suma) / nrPrime << '\n';

    return 0;
}



fl0rin12flo: Am facut-o singur
fl0rin12flo: asa:
#include <iostream>

using namespace std;

int main()
{
int S,i,nr,a,b,d,t;
cin>>a>>b;
float ma;
ma=0;
nr=0;
S=0;
for(i=a;i<=b;i++){
t=1;
for(d=2;d<=i/2;d++){
if(i%d==0){
t=0;
}
}
if(t==1){
S=S+i;
nr=nr+1;
}
}
ma=S/nr;
cout<<ma;
}
AntiEaglesDavids: bravo baiatu sunt mandru
fl0rin12flo: :))ms
Alte întrebări interesante