RISOLTO problemi con gli array - linguaggio c

Pubblicità
Stato
Discussione chiusa ad ulteriori risposte.

Vito-

Utente Attivo
Messaggi
193
Reazioni
15
Punteggio
43
Ciao a tutti, ho dei problemi con la programmazione in C. Sono alle prime armi. Sapreste dirmi dove é l'errore??
L'esercizio chiedeva di creare un array con 10 elementi: stampare le posizioni degli zeri, stampare i numeri positivi e quelli negativi. Questo é quello che ho fatto io...

C:
#include <stdio.h>
#define N 10

int main()

{
    int Array[N]={2,-5,7,0,-19,54,17,-13,10,0};
    int positivi[N],negativi[N],posizioniZeri[N];
    int j=0,h=0,n=0;

    printf("La tabella contiene i seguenti valori:\n ");

    for(int i=0;i<N;i++)
    {

        printf("%d\t", Array[i]);

        if (Array[i]!=0)

            continue;

        else
        {
            posizioniZeri[j]=i;
            j++;
        }

    }

    printf("\n\nGli zeri si trovano negli indici");

    for(int k=0;k<j;k++)
        printf("    %d\t", posizioniZeri[k]);

    for(int g=0;g<N;g++)

        {
            if (Array[g]>0)
            {

                positivi[h]=Array[g];
                h++;

            }
            else
                if(Array[g]<0)
                    {
                        negativi[n]=Array[g];
                        n++;
                    }

        }

    printf("\n\nI numeri positivi sono:\n");
    for(int m=0;m<h;m++)
        printf("%d\t", positivi[m]);

    printf("\n\nI numeri negativi sono:\n");
    for(int b=0;b<n;b++)
        printf("%d\t", negativi[b]);

        return(0);

}
 
Ultima modifica:
Per cortesia, inserisci il codice nel tag "code"/"codice" (lo trovi nel menu con i 3 puntini verticali)
Come hai fatto tu, a parte l'illegibilita' per chi deve aiutarti, vengono intercettati anche i codici HTML... per esempio la variabile "i" tra parentesi quadre [ ] (indice dell'array) abilita la scrittura in corsivo (e contestualmene il "formattatore" la elimina dal tuo codice) ... quindi quel codice e' anche "invalido"
 
Concordo con BrutPitt.
Ho provato a sforzarmi e leggere il tuo codice... e presumo che il problema sia qui:
C:
if(Array[g]<0)
 {
 negativi[n]=Array[g];
 h++;
 }

stai incrementando l'indice sbagliato.
Non si capisce nemmeno il senso di quell'if iniziale, penso derivi dai problemi di formattazione.

Ad ogni modo la prossima volta, oltre ad utilizzare il tag CODE, riporta l'errore o il problema che incontri, altrimenti risulta difficile esserti d'aiuto.
 
Concordo con BrutPitt.
Ho provato a sforzarmi e leggere il tuo codice... e presumo che il problema sia qui:
C:
if(Array[g]<0)
 {
 negativi[n]=Array[g];
 h++;
 }

stai incrementando l'indice sbagliato.
Non si capisce nemmeno il senso di quell'if iniziale, penso derivi dai problemi di formattazione.

Ad ogni modo la prossima volta, oltre ad utilizzare il tag CODE, riporta l'errore o il problema che incontri, altrimenti risulta difficile esserti d'aiuto.
Per cortesia, inserisci il codice nel tag "code"/"codice" (lo trovi nel menu con i 3 puntini verticali)
Come hai fatto tu, a parte l'illegibilita' per chi deve aiutarti, vengono intercettati anche i codici HTML... per esempio la variabile "i" tra parentesi quadre [ ] (indice dell'array) abilita la scrittura in corsivo (e contestualmene il "formattatore" la elimina dal tuo codice) ... quindi quel codice e' anche "invalido"
non capisco come mettere questo code...
--- i due messaggi sono stati uniti ---
Concordo con BrutPitt.
Ho provato a sforzarmi e leggere il tuo codice... e presumo che il problema sia qui:
C:
if(Array[g]<0)
 {
 negativi[n]=Array[g];
 h++;
 }

stai incrementando l'indice sbagliato.
Non si capisce nemmeno il senso di quell'if iniziale, penso derivi dai problemi di formattazione.

Ad ogni modo la prossima volta, oltre ad utilizzare il tag CODE, riporta l'errore o il problema che incontri, altrimenti risulta difficile esserti d'aiuto.
Grazie mille, l'errore era quello. Per quanto riguarda questo Code che dovrei mettere non so come fare
--- i due messaggi sono stati uniti ---
@DispatchCode @BrutPitt ok sono riuscito
 
Ultima modifica:
Stato
Discussione chiusa ad ulteriori risposte.
Pubblicità
Pubblicità
Indietro
Top