Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1

    [C] esercizio su funzione

    salve amici devo svolgere il seguente esercizio sugli array... qualcuno sa darmi soluzioni?

    Progettate ed implementate una funzione che trasforma un array con un numero dispari >3 di dati di tipo int secondo il seguente esempio: A=(1,2,3,4,5,6,7) viene trasformato in B=(5,6,7,4,3,2,1)

    GRAZIE A TUTTI

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Il quesito non e' per nulla chiaro ...

  3. #3

  4. #4
    da quello che ho capito deve prendere la metà -1 degli ultimi campi dell'array e spostarli all'inizio e i rimanenti accodarli

    ma non sono sicurissimo

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Puoi dirmi come calcolare "la metà -1 degli ultimi" ?

    Gli "ultimi" ... quanti ?

  6. #6

    Re: [C] esercizio su funzione

    Prendi la lunghezza dell'array, sottrai 1 poi dividi per 2 e hai trovato l'indice della cadella centrale dell'array.
    Esempio:
    Array di lunghezza 9. Fai:
    9 - 1 = 8
    8/2 = 4
    Infatti considerando che la numerazione delle celle dell'array va da 0 a 8 la cella 4 è proprio quella centrale.

    A questo punto ti fai un for da 5 alla lunghezza dell'array e subito dopo un for da 0 a 3 copiando gli elementi dell'array.

    Spero di essermi spiegato!!

    Ciao.
    Si può vincere o perdere, l'importante è vincere o perdere da uomini...

    Neverland - Il mio Forum

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ti faccio notare che, con il tuo algoritmo, ottieni

    (5,6,7,1,2,3,4)

    ma non

    (5,6,7,4,3,2,1)

    come è stato chiesto ...

    In realta', ripeto, la richiesta non e' per nulla chiara e ognuno puo' interpretarla come si vuole ...

  8. #8
    Sarà l'ora che mi fa venire un po' di svarioni, comunque per la precisione dal mio algoritmo esce (5,6,7,1,2,3).

    Comunque basta una piccola modifica al secondo for, al posto di
    A questo punto ti fai un for da 5 alla lunghezza dell'array e subito dopo un for da 0 a 3 copiando gli elementi dell'array.
    si deve fare
    A questo punto ti fai un for da 5 alla lunghezza dell'array e subito dopo un for da 4 a 0 copiando gli elementi dell'array
    Ciao.
    Si può vincere o perdere, l'importante è vincere o perdere da uomini...

    Neverland - Il mio Forum

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    117
    io avanzo l'idea che si debbano scambiare gli ultimi 3 con i primi 3, e quelli che vanno in fondo devono essere in ordine inverso, la penso che:

    1) Serve una spiegazione migliore
    2) Potresti anche provare a farlo, postare codice e chiedere una mano, non chiedere di fartelo fare. (Consultare l'url della firma)

  10. #10

    Re: [C] esercizio su funzione

    Originariamente inviato da marcusbasic
    salve amici devo svolgere il seguente esercizio sugli array... qualcuno sa darmi soluzioni?

    Progettate ed implementate una funzione che trasforma un array con un numero dispari >3 di dati di tipo int secondo il seguente esempio: A=(1,2,3,4,5,6,7) viene trasformato in B=(5,6,7,4,3,2,1)

    GRAZIE A TUTTI
    Scusate ma io non capisco tutti questi dubbi sul testo dell'esercizio, semplicemente dice che per un qualsiasi array che abbia dimensione dispari maggiore di 3 (quindi lungo 5, o 7, o 9, ecc...), si faccia in modo di scambiare gli elementi dell'array stesso in modo che da così (1,2,3,4,5,6,7) diventino così 5,6,7,4,3,2,1), non capisco tutti questi dubbi. :master:
    Il procedimento da seguire è questo:
    Prendi la lunghezza dell'array, sottrai 1 poi dividi per 2 e hai trovato l'indice della cadella centrale dell'array.
    Esempio:
    Array di lunghezza 9. Fai:
    9 - 1 = 8
    8/2 = 4
    Infatti considerando che la numerazione delle celle dell'array va da 0 a 8 la cella 4 è proprio quella centrale.

    A questo punto ti fai un for da 5 alla lunghezza dell'array e subito dopo un for da 4 a 0 copiando gli elementi dell'array.
    Ciao.
    Si può vincere o perdere, l'importante è vincere o perdere da uomini...

    Neverland - Il mio Forum

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.