Torna indietro   Hardware Upgrade Forum > Software > Programmazione

GIGABYTE GAMING A16, Raptor Lake e RTX 5060 Laptop insieme per giocare al giusto prezzo
GIGABYTE GAMING A16, Raptor Lake e RTX 5060 Laptop insieme per giocare al giusto prezzo
Il Gigabyte Gaming A16 offre un buon equilibrio tra prestazioni e prezzo: con Core i7-13620H e RTX 5060 Laptop garantisce gaming fluido in Full HD/1440p e supporto DLSS 4. Display 165 Hz reattivo, buona autonomia e raffreddamento efficace; peccano però le USB e la qualità cromatica del pannello. Prezzo: circa 1200€.
iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile
iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile
C'è tanta sostanza nel nuovo smartphone della Mela dedicato ai creator digitali. Nuovo telaio in alluminio, sistema di raffreddamento vapor chamber e tre fotocamere da 48 megapixel: non è un semplice smartphone, ma uno studio di produzione digitale on-the-go
Intel Panther Lake: i processori per i notebook del 2026
Intel Panther Lake: i processori per i notebook del 2026
Panther Lake è il nome in codice della prossima generazione di processori Intel Core Ultra, che vedremo al debutto da inizio 2026 nei notebook e nei sistemi desktop più compatti. Nuovi core, nuove GPU e soprattutto una struttura a tile che vede per la prima volta l'utilizzo della tecnologia produttiva Intel 18A: tanta potenza in più, ma senza perdere in efficienza
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-12-2008, 18:18   #1
fabri_napoli
Junior Member
 
Iscritto dal: Dec 2008
Città: Napoli
Messaggi: 21
[C] io, gli array, e le funzioni...

Sono di nuovo io, qui ad elemosinare aiutooo!! XD
Stavolta mi viene chiesto di trovare il massimo in un array... "questo lo so fare", penso io.. e infatti:
Codice:
#include <stdio.h>
#include <stdlib.h>



main () {
     int i, n, *a, massimo;
     
     printf ("Quante locazioni deve contenere il tuo array?\n");
     scanf ("%d", &n);
     a= (int*) malloc (n*sizeof(int));
     
     for (i=0; i<=n; i++) {
         printf ("Inserisci il valore n.%d\n", i);
         scanf ("%d", &a[i]); }
         massimo=0;
     for (i=0; i<=n; i++) {
         if (a[i]>massimo) {
                        massimo=a[i]; }
                        
         else { massimo=massimo; }
         }
         printf ("Il valore massimo contenuto nell'array e' pari a %d\n", massimo);
         system ("pause");
         }
tutto bene, mi funge... ora però mi viene chiesto di fare lo stesso.. con una FUNZIONE... e come avrete ben capito, evidentemente non ho ancora inquadrato bene come funzionano ste benedette Function
dunque scrivo
Codice:
#include <stdio.h>
#include <stdlib.h>

int maxn (int max);

main () {
     int i, n, *a, massimo, max;
     
     printf ("Quante locazioni deve contenere il tuo array?\n");
     scanf ("%d", &n);
     a= (int*) malloc (n*sizeof(int));
     for (i=0; i<=n; i++) {
         printf ("Inserisci il valore n.%d\n", i);
         scanf ("%d", &a[i]); }
     massimo= maxn (max);
     printf ("Il valore massimo contenuto nell'array è pari a %d\n", massimo);
     system ("pause");
     }
     
int maxn (int max) {
    int i, a[i], n;
    max=0;
    for (i=0; i<=n; i++) {
        if (a[i]>max) {
                   max=a[i]; }
        else { max=max; }
        }
        return max;
        }
buuuum crashhhh! che cos'è che non ho capito?? più che la soluzione del quesito sarei felicissimo se mi aiutaste a capire COSA NON HO CAPITO di ste benedette Funzioni!!!! ("niente" non è una risposta )
Vi ringrazio tanto
fabri_napoli è offline   Rispondi citando il messaggio o parte di esso
Old 08-12-2008, 18:28   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
A maxn devi passare i parametri che ti servono nella funzione, il cui valore viene definito in main, in questo caso *a e n, all'interno della funzione devi ricavarti il massimo e ritornarlo al main con return.

Supponi di avere una funzione che fa la somma fra A e B, cosa gli dovrai passare alla funzione somma ? Ovviamente A e B e dovrai ritornare A + B. Stesso discorso in questo caso: devi trovare il massimo, allora gli dovrai passare il vettore e il numero di elementi. Il valore di ritorno dovrà essere il massimo.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 08-12-2008, 18:37   #3
fabri_napoli
Junior Member
 
Iscritto dal: Dec 2008
Città: Napoli
Messaggi: 21
sììììì hai ragioneeee!! ti farei una statua d'oro

Codice:
#include <stdio.h>
#include <stdlib.h>

int maxn (int n, int *a);

main () {
     int i, n, *a, massimo, max;
     
     printf ("Quante locazioni deve contenere il tuo array?\n");
     scanf ("%d", &n);
     a= (int*) malloc (n*sizeof(int));
     for (i=0; i<=n; i++) {
         printf ("Inserisci il valore n.%d\n", i);
         scanf ("%d", &a[i]); }
     massimo= maxn (n, a);
     printf ("Il valore massimo contenuto nell'array è pari a %d\n", massimo);
     system ("pause");
     }
     
int maxn (int n, int *a) {
    int i;
    int max=0;
    for (i=0; i<=n; i++) {
        if (a[i]>max) {
                   max=a[i]; }
        else { max=max; }
        }
        return max;
        }
e così mi funge! grazie infinite!!!!
fabri_napoli è offline   Rispondi citando il messaggio o parte di esso
Old 10-12-2008, 22:41   #4
malocchio
Senior Member
 
L'Avatar di malocchio
 
Iscritto dal: Feb 2007
Città: Verona
Messaggi: 1060
Consiglio la lettura di una dispensina teorica sulle funzioni (matematica/informatica)..
__________________
malocchio è offline   Rispondi citando il messaggio o parte di esso
Old 11-12-2008, 09:29   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
malocchio: hai la firma irregolare, max 3 righe di testo alla risoluzione di 1024.
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


GIGABYTE GAMING A16, Raptor Lake e RTX 5060 Laptop insieme per giocare al giusto prezzo GIGABYTE GAMING A16, Raptor Lake e RTX 5060 Lapt...
iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile iPhone 17 Pro: più di uno smartphone. &Eg...
Intel Panther Lake: i processori per i notebook del 2026 Intel Panther Lake: i processori per i notebook ...
Intel Xeon 6+: è tempo di Clearwater Forest Intel Xeon 6+: è tempo di Clearwater Fore...
4K a 160Hz o Full HD a 320Hz? Titan Army P2712V, a un prezzo molto basso 4K a 160Hz o Full HD a 320Hz? Titan Army P2712V,...
Silence crea anche in Francia una rete d...
La realtà mista al servizio degli...
Nothing ha un altro smartphone in progra...
Decisione storica ad Amburgo: i cittadin...
Questo è il nuovo motore elettric...
HUAWEI WATCH GT 6: lo smartwatch 'infini...
Fotografia con AI: ecco Caira, la macchi...
PlayStation 6 vs Xbox Magnus: il rumor s...
DJI Osmo Action 4 a soli 208€ su Amazon:...
Irion, la data governance diventa strate...
EHang VT35: debutta in Cina il nuovo aer...
Cooler Master MasterLiquid Atmos II 360:...
Trapela in rete la roadmap dei nuovi gio...
In Germania la prima centrale solare gal...
Iliad lancia TOP 250 PLUS e TOP 300 PLUS...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:34.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v