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

    [C++] Programma per studiare i numeri

    Devo realizzare un programma che conti, dato un numero massimo di numeri, quanti tra i numeri inseriti sono pari, dispari etc.... il problema è che devo farlo con le funzioni....
    Sono arrivato a questo punto... il problema è che, se voglio creare un array dove mettere i numeri pari contenuto in numeri[] non so come fare.... ho provato ma non riesco con una funzione esterna

    codice:
    1. #include <iostream>
    2. #include <stdio.h>
    3. #include <cstdlib>
    4. using namespace std;
    5. int Max_Num (int a)
    6. {
    7. while (a>100)
    8. {
    9. printf("Il numero che hai inserito è troppo alto : puoi inserire massimo 100 numeri \n");
    10. scanf("%d", &a);
    11. }
    12. return a;
    13. }
    14. int Inserisci_Num (int a[], int b)
    15. {
    16. int i=0;
    17. for(i=0; i<b; i++)
    18. {
    19. scanf("%d", &a[i]);
    20. }
    21. return a[100];
    22. }
    23. int Conta_Pari_Dispari (int a[], int d, int f, int e)
    24. {
    25. int i=0;
    26. int resto=0;
    27. for(i=0; i<d; i++)
    28. {
    29. resto=(a[i]%2);
    30. if (resto==0)
    31. {
    32. f++;
    33. }
    34. else (resto==1);
    35. {
    36. e++;
    37. }
    38. }
    39. return f;
    40. return e;
    41. }
    42. void Stampa_Array (int a[], int b)
    43. {
    44. int i=0;
    45. for(i=0; i<b; i++)
    46. printf("%d \n", a[i]);
    47. }
    48. int main()
    49. {
    50. int num_ins;
    51. int numeri [100];
    52. int pari=0;
    53. int dispari=0;
    54. printf("Inserisci quanti numeri vuoi inserire : \n");
    55. scanf("%d", &num_ins);
    56. num_ins=Max_Num(num_ins);
    57. printf("Inserisci i %d numeri uno alla volta, seguiti da un INVIO : \n", num_ins);
    58. numeri[100]=Inserisci_Num(numeri, num_ins);
    59. printf("Ora il programma procederà con il controllare i numeri da te inseriti \n");
    60. pari=Conta_Pari_Dispari(numeri, num_ins, pari, dispari);
    61. dispari=num_ins-pari;
    62. printf("Hai inserito %d numeri pari \n", pari);
    63. printf("Hai inserito %d numeri dispari \n", dispari);
    64. system("PAUSE");
    65. }

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    La funzione lavora già sugli elemento dell'array passato per indirizzo. Non c'è bisogno di restituire nulla, quindi la funzione deve essere void

    codice:
    1. void Inserisci_Num(int a[],int b)
    2. {
    3. int i;
    4. for(i=0; i<b; i++)
    5. scanf("%d",&a[i]);
    6. }


    e può essere semplicemente chiamata con


    codice:
    Inserisci_Num(numeri, num_ins);
    



    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 © 2025 vBulletin Solutions, Inc. All rights reserved.