Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Salve a tutti!!!
Ragazzi qualcuno mi sa dire come risolvere questo es, non riesco proprio ho letto in giro che bisgona usare un algoritmo riguardante la congettura di Goldbach ma proprio nn ci sono riuscito. Ecco quello ke ho fatto:
/* Scrivere una funzione che prende in ingresso un numero pari e restituisce 1
se il numero e' la somma di due numeri primi, 0 altrimenti.
Utilizzare una funzione primo che prende in ingresso un numero e
restituisce 1 se questo e' primo, 0 altrimenti. */
#include <iostream>
#include <cstdlib>
using namespace std;
int primo (int);
int restitutore (int);
int somma (int, int);
int main () {
int numero,ris,resto;
cout<<"Programma che verifica se un numero pari è primo, e se nn lo è verifica se è la somma di due num primi \n";
cout<<"Inserire numero pari: "<<endl;
cin>>numero;
primo (numero);
ris=primo (numero);
restitutore (numero);
cout<<"E' un numero primo: "<<ris<<endl;
cout<<"E' somma di numeri primi: "<<restitutore (numero)<<endl;
system("pause");
}
int primo (int a) {
for (int i=2;i<=a;i++){
if (i==a)
return 1;
if (a%i==0)
return 0;
}
}
int restitutore (int a){
int temp2=0;
for (int i=2;i<a;i++){
if (primo(i)==1){
cout<<primo(i)<<" ";
cout<<i<<endl;
if (i+temp2==a)
return 1;
if (i+temp2!=a)
temp2=i ;
}
}
}
Grazie a tutti anticipatamente
---Nessuno risponde!?!? vi prego datemi una mano...
Ultima modifica effettuata da atota il 07/11/2008 alle 1:10
la congettura di Goldbach dice che ogni numero pari maggiore di 4 si puo' esprimere come somma di due numeri primi.
quindi questo programma + che altro servirebbe per verificare la congettura di Goldbach...
Focalizzati sulla realizzazione della funzione per determinare se un numero e' primo oppure no.
Il codice che hai postato mi pare sufficientemente sbagliato da richiedere una totale riscrittura.
Non ha senso verificare se un numero pari e' primo o no... l'unico numero primo pari è 2: tutti gli altri sono divisibili per 2 per definizione di numero pari.
Ciao
Ultima modifica effettuata da gioser il 07/11/2008 alle 10:56
ma io infatti nn verifico se un numero pari è primo io verifico se è somma di numeri primi...la verifica dei numeri primi la faccio sui numeri primi appunti precedenti il numero pari dato dall'utente...