DOMANDA Linguaggio C,come faccio a implementare il calcolo del massimo e del minimo di questo array,all'interno della stessa funzione esterna al main?

Pubblicità
@Andretti60 dato il primo codice era plausibile che fosse parte dell'esercizio, non essendo diversamente specificato, ti pare? Nessun bisogno di scaldarsi.

E proprio per essere incisi, "implementi una funzione che immesso come input un vettore e la sua dimensione, restituisca [...]" in italiano vuol dire che i parametri sono due, non quattro. È stata una banale incomprensione, si poteva riformulare in "implementi una funzione che immesso come input un vettore, la sua dimensione e due parametri per puntatore, modifichi gli ultimi due assegnando come valori il massimo ed il minimo". Certo forse chi ha scritto l'esercizio voleva che si arrivasse all'utilizzo dei puntatori, ma ciò non di meno non rende giustizia alla lingua italiana.
 
Secondo me "restituire tramide 2 parametri della funzione" significa semplicemente (e come avete già suggerito) che i parametri di maxmin devono essere 4, non 2: ovviamente il vettore e la sua dimensione, poi 2 paramatri passati per riferimento (puntatore) che modifichino 2 variabili esterne. Poiché il risultato è la modifica dei parametri passati per riferimento, la funzione può essere dichiarata void.
EDIT
rileggendo gli interventi, mi pare che @Giacomo Furlan abbia già scritto l'intestazione
 
Due punti. Primo, per favore NON suggeriti metodi che non rispondono ai requisiti dell'esercizio, che sono ben precisi:


Secondo, la soluzione non e' in generale corretta perche' le variabili min e max vengono inizializzate con valori arbitrari. Non funziona se inserisco nel vettore iniziale per esempio -1 e 9999999. Il quesito dell'esercizion non specifica i limite dei valori del vettore. Basta una piccola modifica, assgnando valori opportuni. Pensaci su, prima che ti diamo suggerimenti.

Ok,ho inoltre dichiarato le variabili intere MAX e MIN ,adesso penso proprio che il programma funge ed è implementato come l'esercizio richiede.Grazie!!
 
Oppure puoi anche assegnare alla variabile max/min il valore del primo elemento del vettore, per poi effettuare la ricerca, sempre accertandosi di non ricevere un vettore vuoto.
 
puoi anche assegnare alla variabile max/min il valore del primo elemento del vettore, per poi effettuare la ricerca, sempre accertandosi di non ricevere un vettore vuoto.
:ok:
...e in questo modo il programma è indipendente dal tipo di dato utilizzato, evitando l'uso di costanti
 
@Andretti60 dato il primo codice era plausibile che fosse parte dell'esercizio, non essendo diversamente specificato, ti pare? Nessun bisogno di scaldarsi.

E proprio per essere incisi, "implementi una funzione che immesso come input un vettore e la sua dimensione, restituisca [...]" in italiano vuol dire che i parametri sono due, non quattro. È stata una banale incomprensione, si poteva riformulare in "implementi una funzione che immesso come input un vettore, la sua dimensione e due parametri per puntatore, modifichi gli ultimi due assegnando come valori il massimo ed il minimo". Certo forse chi ha scritto l'esercizio voleva che si arrivasse all'utilizzo dei puntatori, ma ciò non di meno non rende giustizia alla lingua italiana.
Veramente no, non vi è nulla di sbagliato nel testo, che è molto chiaro. Dice di usare due parametri di ingresso e due parametri di uscita, per un totale di quattro parametri.
Ecco perché ho contestato (non mi sono scaldato per nulla) l'uso di vettori e strutture per ritornare i valori calcolati. Non parlerò italiano da più di venti anni :) ma lo so ancora leggere. Quello di capire che i parametri di ritorno debbano essere passati per referenza (quindi come puntatori) fa parte dell'esercizio.
 
Pubblicità
Pubblicità
Indietro
Top