-
.
Ciao a tutti, ho trovato un esercizio che diceva di fare un programma che presi in input il primo membro, e il secondo membro di un equazione si primo grado, calcolasse il valore della x.
Per adesso non ho ancora fatto la parte di programma che calcola x perché ho un problema nella prima.CODICE#include <stdio.h>
int main(){
int dim1, dim2;
char pm[dim1],sm[dim2];
printf("PRIMO MEMBRO\n");
printf("Quanti termini ci sono al primo membro?");
scanf("%d", &dim1);
printf("Inserire il primo membro:\n");
scanf("%s", pm);
printf("SECONDO MEMBRO\n");
printf("Quanti termini ci sono al secondo membro?");
scanf("%d", &dim2);
printf("Inserire il secondo membro:\n");
scanf("%s", sm);
printf("\nL'equazione inserita è %s=%s", pm, sm);
return 0;
}
Prendiamo ora in esempio uno svolgimentto del genere:CODICEPRIMO MEMBRO
Quanti termini ci sono al primo membro?2
Inserire il primo membro:
2x+3
SECONDO MEMBRO
Quanti termini ci sono al secondo membro?3
Inserire il secondo membro:
3-2+x
La penultima riga di codice viene eseguita così:CODICEL'equazione inserita è 3-2+X=3-2+X
Perchè fa così?Grazie in anticipo per le risposte.. -
raxell.
User deleted
La dimensione dell'array (dim1, dim2) deve essere conosciuta in compilazione, se vuoi creare una stringa di dimensione sconosciuta devi prima allocare lo spazio con malloc()
.
In ogni caso la dimensione della stringa non è comunque corretta: vuoi usare il numero di termini come dimensione ma la lunghezza di "2x+3" è 4 + 1 = 5. Idem per l'altra.. -
.CITAZIONEInserire il membro
XD
Comunque problema risolto.