 |
|
 |
| Precedente :: Successivo |
Autore |
Messaggio |
|
|
maris.p Novizio
Registrato: 30/10/09 12:27 Messaggi: 9
|
Inviato: Gio Nov 26, 2009 6:40 pm Oggetto: creare tabella.. |
|
|
| Codice: |
/*QUESTO PROGRAMMA ACQUISISCE DA TASTIERA UN NUMERO REALE POSITIVO x<10000,
E SUCCESSIVAMENTE CALCOLA LA PARTE INTERA N DI x, CALCOLA I NUMERI PRIMI
MINORI O UGUALI AD N E LI STAMPA IN UNA TABELLA A 10 COLONNE; INFNE CALCOLA
LA MEDIANA DEI NUMERI MINORI O UGUALI AD N*/
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#define Max 10000
int main(void){
float x; float n[Max];
double mediana;
int k,i,j,N,;
printf("\n\n\nInserisci un numero reale x: ");
scanf("%f",&x);
N=floor(x);
printf("\n\nLa parte intera di x e': %d",N);
printf("\n\nI numeri primi minori o uguali ad N sono: ");
for(i=2;i<=N;i++)
n[i] = 1;
for (i=2; i<N; i++) {
if (n[i] == 1) {
printf("%d ", i);
for (j=2; i*j<N; j++)
n[i*j] = 0;
}
}
if(N%2==0)
mediana=(N/2+((N/2)+1))/2;
else
mediana=(N+1)/2;
printf("\n\nLa mediana e' %f",mediana);
system("pause"); return 0;
}
|
Il codice sembra andare, anche se ho un piccolo dubbio sulla mediana.. ma la cosa che non sono proprio riuscita a fare è quella di stampare i numeri primi in una tabella a 10 colonne.. Qualcuno può aiutarmi? Grazie mille a tutti.. |
|
Top |
|
 |
cali1981 Site Admin
Registrato: 16/01/06 22:01 Messaggi: 836
|
Inviato: Ven Nov 27, 2009 9:08 am Oggetto: |
|
|
Basta che usi printf. Ad esempio:
| Codice: |
int contatoreColonne = 0;
for (i=2; i<N; i++) {
if (n[i] == 1) {
printf("%d\t", i);
contatoreColonne++;
if(contatoreColonne == 10) {
contatoreColonne = 0;
printf("\n");
}
for (j=2; i*j<N; j++)
n[i*j] = 0;
}
}
|
\t è il tabulatore per stampare un pò meglio, se vuoi puoi toglierlo se la riga viene troppo lunga. _________________ Visita anche il sito Agriturismo Umbria per maggiori informazioni sull'Umbria!
Realizzazione siti web e applicazioni ASp.NEt, C/C++, C# |
|
Top |
|
 |
maris.p Novizio
Registrato: 30/10/09 12:27 Messaggi: 9
|
Inviato: Mer Dic 02, 2009 10:19 am Oggetto: |
|
|
Grazie mille cali1981, mi sei stato utilissimo.. |
|
Top |
|
 |
cali1981 Site Admin
Registrato: 16/01/06 22:01 Messaggi: 836
|
|
Top |
|
 |
|
|
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|