Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Ordinamento di stringhe ?
Forum - C/C++ - Ordinamento di stringhe ? - Pagina 3

Pagine: [ 1 2 3 4 5 ] Precedente | Prossimo
Avatar
perillitommaso (Normal User)
Pro


Messaggi: 186
Iscritto: 28/01/2014

Segnala al moderatore
Postato alle 16:31
Venerdì, 11/04/2014
L'ho modificato dopo, ho modificato M che è passato da int a float e anche temp che è passato da int a float, però fino ad adesso, ogni volta che ho provato la media è risultata sempre 0. ( ho inserito numeri del genere: 4 6 8 )

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6404
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 16:32
Venerdì, 11/04/2014
Ma l'input con scanf lo fai con %f e non con %d ?

Proponi nuovamente tutto il codice modificato ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
perillitommaso (Normal User)
Pro


Messaggi: 186
Iscritto: 28/01/2014

Segnala al moderatore
Postato alle 16:44
Venerdì, 11/04/2014
Problema risolto :) quando visualizzavo c'era un %d e non un %f .. errore di distrazione ahah :asd:

Ultima modifica effettuata da perillitommaso il 11/04/2014 alle 16:49
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6404
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 17:19
Venerdì, 11/04/2014
Purtroppo la distrazione è il peggior nemico della programmazione ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
perillitommaso (Normal User)
Pro


Messaggi: 186
Iscritto: 28/01/2014

Segnala al moderatore
Postato alle 18:44
Sabato, 12/04/2014
Testo quotato

Postato originariamente da nessuno:

  


Già, basta che metti una virgola al posto sbagliato, e non ti funziona più niente!

PM Quote
Avatar
perillitommaso (Normal User)
Pro


Messaggi: 186
Iscritto: 28/01/2014

Segnala al moderatore
Postato alle 20:17
Sabato, 12/04/2014
Ho provato a vedere un pò per l'ordinamento delle stringhe, allora:
Codice sorgente - presumibilmente C/C++

  1. void ordinamento(char *citta){
  2.      for(i=1;i<=6;i++){
  3.      if(citta[i][0]>citta[i+1][0]){
  4.      scambio(citta);                              
  5.      }                  
  6.                        
  7.      }
  8.      
  9.      return;
  10.      }
  11.  
  12. void scambio(char *citta){
  13.      char stringapp [15];
  14.  
  15.      
  16.      strcpy(stringapp,citta[i+1]);
  17.      strcpy(citta[i+1],citta[i]);
  18.      strcpy(citta[i],stringapp);
  19.      
  20.      return;
  21.      }



Secondo voi? Quando vado ad incrementare l'indice, non si sporca? Ho bisogno anche di una aria di lavoro per memorizzare l'indice?

Ultima modifica effettuata da perillitommaso il 12/04/2014 alle 20:23
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6404
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 0:26
Domenica, 13/04/2014
Non usare una funzione scambio, non in quel modo almeno, dato che l'indice i non è disponibile nella funzione scambio. Scrivi direttamente nella funzione ordinamento.

E soprattutto controlla i valori minimi e massimi di i. Perché inizi da 1 e termini al 6 ? Considera che

i varierà da 1 a 6 e

i+1 varierà da 2 a 7



Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
perillitommaso (Normal User)
Pro


Messaggi: 186
Iscritto: 28/01/2014

Segnala al moderatore
Postato alle 12:01
Domenica, 13/04/2014
La i parte da 1 perchè ho 7 righe, 6 dove sono presenti i nomi delle città, e la prima riga con indice 0 è vuota perchè ho un altro array parallelo con sempre 7 righe, solo che la prima riga con indice 0 avrà gli orari delle temperature, infatti quando ho dichiarato l'array temp l'ho dichiarato così:
Codice sorgente - presumibilmente C/C++

  1. int  temp [7][4] = {6,12,16,00};


dove 6,12,16,00 sono gli orari delle temperature

PM Quote
Pagine: [ 1 2 3 4 5 ] Precedente | Prossimo