View Full Version : Programma in C
Salve a tutti,
devo scrivere un programma che:
1) mi permetta di inserire una sequenza di punti (x,y)(float) chiedendo all'inizio all'utente quante coppie vuole inserire.
2)successivamente elenca le coppie inserite.
Il punto 1 l'ho fatto e nel 2 non riesco a far elencare tutte le coppie inserite ma solo l'ultima che inserisco.
Contattatemi in privato se siete disponibili ad aiutarmi. Ringrazio anticipatamente!
Ciao a tutti!
clockover
03-11-2012, 21:33
Salve a tutti,
devo scrivere un programma che:
1) mi permetta di inserire una sequenza di punti (x,y)(float) chiedendo all'inizio all'utente quante coppie vuole inserire.
2)successivamente elenca le coppie inserite.
Il punto 1 l'ho fatto e nel 2 non riesco a far elencare tutte le coppie inserite ma solo l'ultima che inserisco.
Contattatemi in privato se siete disponibili ad aiutarmi. Ringrazio anticipatamente!
Ciao a tutti!
Io direi invece che pubblicamente potresti mostrarci il tuo codice così qualcuno può dargli uno sguardo e vedere cosa c'è che non va ;)
#include <stdio.h>
#include <math.h>
typedef struct
{
float x;
float y;
char coppia[20],coppia1[20];
}coordinata;
int main ()
{
coordinata c;
int inserito=0, i=1;
printf("Digitare il numero di coppie che si desidera inserire: ");
scanf ("%d",&inserito);
for (i=1; i<=inserito; i++)
{
printf("Inserire la %d coppia: ",i);
scanf("%f%f",&c.x,&c.y);
c.coppia[i]==c.x;
c.coppia1[i]==c.y;
}
for(inserito=i;i>1;i--)
{
printf("(%f,%f)\n",c.coppia[i],c.coppia1[i]);
}
getch();
}
L'ultima parte è l'ultima cosa che ho provato un po a caso...scusate ma sono alle prime armi :) grazie!
Ma non capisco a cosa serve l'array di char nella struttura , ci vai a memorizzare le coordinate ... Dovresti creare un array della struttura coordinata del tipo :
typedef struct
{
float x;
float y;
}coordinata;
coordinata c[dimensione];
In questo modo ogni elemento dell'array contiene una coordinata : C[0]=1,2.
Poi nel tuo esempio se uno vuole inserire più di 20 elementi , dovresti gestire l'allocazione dinamica dell' array o hai un limite massimo ?
No non nessuno limite. allora domani provo a vedere come viene. grazie per il suggerimento. :)
Comunque ribadisco ancora che sono alle prime armi. :(
saluti
Grazie mille ho risolto questo punto. In effetti non aveva senso quello che avevo scritto ma era un tentativo fatto a tarda ora :D.
Bene . Se non l'hai già fatto , per togliere il limite delle 20 coppie devi usare l'allocazione dinamica dell'array . La funzione che permette ciò e la malloc , ovvero qualcosa del genere :
coordinata *coordinate =(coordinata *) malloc (dimensione * sizeof(coordinate));
Dove dimensione è la lunghezza del tuo array inserita dall'utente all'inizio.
vBulletin® v3.6.4, Copyright ©2000-2026, Jelsoft Enterprises Ltd.