Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    insert sort con puntatori; come si fà?

    Ciao amici, sono alle prime armi con mla programmazione in c++. Volevo creare un programmino in cui avvenisse il passaggio di puntatori a d una funzione, ma la cosa non mi riesce.
    Qualcuno sa dirmi cosa sbaglio?

    il seguente è il mio file sorgente:

    codice:
    #include <iostream>
    #include <cctype>
    using namespace std;
    
    int	ordine_cres(int *x,int *y);
    int main()
    {
    	int num[5];
    	int *start, *end;
    
    	start = num;
    	end = start+4;
    	
    	while(start<=end){
    		cout << "numero:  \t";
    		cin >> *start;
    		start++;
    	}
    	start = num;
    
    	ordine_cres(start,end);
    
    	for(start;start=end;start++){
    		cout << "\t"<< *start << '\n';
    
    	return 0;
    	
    }
    
    int	ordine_cres(int *x, int *y)
    {
    	int temp;
    
    	for(;y=x+1;y--){
    		for(;x<4;x++){
    
    			if(*x > *(x+1){
    				temp = *x;
    				*x= *(x+1);
    				*(x+1) = temp;
    			}
    		}
    	}
    	return 0;
    }

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320

    Moderazione

    Manca il linguaggio nel titolo, come richiesto dal Regolamento.
    Manca l'utilizzo dei tag CODE per il posting del codice, come richiesto dal Regolamento.

    Correggo io.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    perchè metti end = start+4?

    attenzione che nel ciclo for finale usi come condizione

    codice:
    for(start;start=end;start++){ //questo deve avere il doppio =, attenzione che sta graffa non è chiusa
    		cout << "\t"<< *start << '\n';
    mentre deve essere


    codice:
    for(start;start==end;start++)
    		cout << "\t"<< *start << '\n';
    ps: il codice non compila

  4. #4
    Ciao Stoicenko, grazie al tuo aiuto sono riuscito a trovare la soluzione al problema. Oltrea alle tue dritte c'erano un'altro paio di sviste che non mi permettevano di compilare, ma ora ho risolto.

    GRAZIE TANTE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.