![]()
qualcuno può aiutarmi a fare un semplicissimo programmino per vedee se un numero inserito da input è primo oppure no? (usando while e if)
grazie!!![]()
![]()
qualcuno può aiutarmi a fare un semplicissimo programmino per vedee se un numero inserito da input è primo oppure no? (usando while e if)
grazie!!![]()
se un numero n non e' primo ha almeno un divisore compreso tra 2 e radice di n.
Puoi pensare al resto della divisione.
Se il numero inserito da tastiera ti da resto zero fai una cosa
else
fai un altra cosa.
![]()
ok grazie.. ci sono riuscito!
un'ultima cosa..
dato un numero qualsiasid evo trovare il numeo primo piu vicino, sia maggiore che minore..
ES:
dato: 14
stampa: 13
dato: 9
stampa 7/11
dato: 11
satampa: 11
grazie!
Dobbiamo farlo noi al posto tuo?Originariamente inviato da Buzzz
ok grazie.. ci sono riuscito!
un'ultima cosa..
dato un numero qualsiasid evo trovare il numeo primo piu vicino, sia maggiore che minore..
grazie!![]()
SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
Di questo libro e degli altri (blog personale di recensioni libri) | NO M.P. TECNICI
Io per i numeri primi ho sempre usato il Crivello di Erastotene, che non è il miglior algoritmo in termini di O grandi o o piccoli, ma ha sempre funzionato.
Per il numero maggiore o minore più vicino potresti mettere la sequenza dei numeri primi in un albero binario, possibilmente bilanciato, poi fare una visita Inorder e trovare i due nodi a cavallo del tuo numero e decidere chi dei due è più vicino.
al volante son nervoso
no..Originariamente inviato da Alex'87
Dobbiamo farlo noi al posto tuo?![]()
cercavo solo un suggerimento.. le basi scritte che poi io traduco in codice..
non sapendo nemmeno da dove iniziare, non posso iniziare..
io ho fatto questo, che vede se il numero è primo oppure no.. poi non so come modificarlo per farlo l'altro pezzo di problema..
codice:import javax.swing.*; public class NPrimo { public static void main() { int cont=2, n, c=0; n=Integer.parseInt(JOptionPane.showInputDialog("inserisci il numero")); while(cont<n){ if(n%cont==0){ c++; } cont++; } if(c!=0){ JOptionPane.showMessageDialog(null,"il numero non è primo"); } else{ JOptionPane.showMessageDialog(null,"il numero è primo"); } } }
Inizia con il fare un metodo a parte per testare se un numero è primo, del tipo:Originariamente inviato da Buzzz
dato un numero qualsiasid evo trovare il numeo primo piu vicino, sia maggiore che minore..
io ho fatto questo, che vede se il numero è primo oppure no.. poi non so come modificarlo per farlo l'altro pezzo di problema..
public static boolean isNumeroPrimo(int num)
(poi chiamalo come vuoi, eh ...)
Per i numeri primi più vicini diventerà quindi molto semplice: dato un numero N fai 2 cicli separati, uno andando in decremento (N-1, N-2 ...... 2), l'altro in incremento (N+1, N+2 .....).
P.S. il main() deve avere String[] come parametro.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
ahn si giusto.. di solito non lo uso se ogni volta che eseguo il programma devo scrivere String[]..
comunque ho capit un po il meccanismo ma non ho capito bene come impstarlo..
cioè cosa mettere nei due while e negli if..
puoi farmi un esempio semplicissimo anche senza compilarlo??
grazie mille!