Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 42

Discussione: [C++] Mano o for?

  1. #1

    [C++] Mano o for?

    Buon giorno,

    Devo inserire una sequenza di numeri interi in un array di int.
    La sequenza inizia da 2 e finisce a 99; continua aggiungendo 1 e 3.
    Esempio della prima riga: 2-3-6-7-10-11-14-18-19.
    Sono indeciso se utilizzare dei cicli for o farlo manualmente.
    Con i cicli for, sarebbe più ostico, in quanto l'algoritmo che ho pensato prevede almeno due cicli for, impostati in questo modo.
    Immaginate la prima riga con i corrispondenti indici in un array; come potete notare, ad ogni 2 indici, corrisponde un incremento di 4.
    Quindi con un ciclo for posso impostare i valori gli indici 2-4-6-8 e con un altro 3-5-7-9.

    Per impostare i valori, posso fare delle operazioni sul contatore (bene o male sono riuscito ad impostarlo).

    Il problema è che devo importare 7 tabelle, di cui 5 hanno una sequenza di +1 e quindi posso visualizzarla con un for, e le altre dovrei metterle manualmente in un array.
    Il punto è: mano o for?
    Non so se impiego più tempo ad inserire i numeri manualmente o impostare i cicli.
    A livello di runtime, ci possono essere variazioni di prestazioni (sono abbastanza fissato)?
    Quale opzione scegliereste?

    Con i migliori saluti,
    signore del tempo.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Un ciclo while e una variabile per il passo che cambia ad ogni ciclo
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Non ho capito cosa tu intenda...
    Potresti essere più esplicito? A cosa ti riferisci?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Cosa non hai capito ... penso che tu sappia cosa sono un ciclo while e una variabile ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    "variabile per il passo"

    Magari fai un esempio...

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    codice:
    	int v=2, st=1;
    
    	while(v<=99)
    	{
    		printf("%d ", v);
    		v += st;
    		st ^= 2;
    	}
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Interessante.
    Ma cosa significa ^= ?

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    ^ è l'operatore binario "or esclusivo" (bitwise xor) ... se non lo conosci non importa ... in pratica modifica il valore di st, ogni volta, da 1 in 3 e da 3 in 1.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Preferisco utilizzare solo argomenti che conosco.
    Hai altre soluzioni a riguardo?

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Scusa, non sai sostituirlo con una semplice if ?
    No MP tecnici (non rispondo nemmeno!), usa il 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 © 2024 vBulletin Solutions, Inc. All rights reserved.