RISOLTO problemi con gli array - linguaggio c

Stato
Discussione chiusa ad ulteriori risposte.

Vito-

Nuovo Utente
104
8
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:

BrutPitt

Utente Attivo
613
550
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"
 
  • Mi piace
Reazioni: DispatchCode

DispatchCode

Moderatore
Staff Forum
1,360
999
CPU
Intel 1200 I9-10900KF 3.75GHz 10x 125W
Dissipatore
Gigabyte Aorus Waterforce X360 ARGB
Scheda Madre
Asus 1200 TUF Z590-Plus Gaming ATX DDR4
HDD
1TB NVMe PCI 3.0 x4, 1TB 7200rpm 64MB SATA3
RAM
DDR4 32GB 3600MHz CL18 ARGB
GPU
Nvidia RTX 3080 10Gb DDR6
Audio
Integrata 7.1 HD audio
Monitor
AOC C27g2u 165Hz
PSU
Gigabyte P850PM
Case
Phanteks Enthoo Evolv X ARGB
Periferiche
MSI Vigor GK30, mouse Logitech
Net
30Mbps/3Mbps con Eolo
OS
Windows 10 64bit
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.
 
  • Mi piace
Reazioni: BrutPitt

Vito-

Nuovo Utente
104
8
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...
Post automatically merged:

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
Post automatically merged:

@DispatchCode @BrutPitt ok sono riuscito
 
Ultima modifica:
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando

Discussioni Simili