Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR ha finalmente lanciato il suo nuovo flagship: Magic 8 Pro. Lo abbiamo provato a fondo in queste settimane e ve lo raccontiamo nella nostra recensione completa. HONOR rimane fedele alle linee della versione precedente, aggiungendo però un nuovo tasto dedicato all'AI. Ma è al suo interno che c'è la vera rivoluzione grazie al nuovo Snapdragon 8 Elite Gen 5 e alla nuova MagicOS 10
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Le webcam Insta360 Link 2 Pro e Link 2C Pro sono una proposta di fascia alta per chi cerca qualità 4K e tracciamento automatico del soggetto senza ricorrere a configurazioni complesse. Entrambi i modelli condividono sensore, ottiche e funzionalità audio avanzate, differenziandosi per il sistema di tracciamento: gimbal a due assi sul modello Link 2 Pro, soluzione digitale sul 2C Pro
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70 porta il concetto di smartphone ultrasottile su un terreno più concreto e accessibile: abbina uno spessore sotto i 6 mm a una batteria di capacità relativamente elevata, un display pOLED da 6,7 pollici e un comparto fotografico triplo da 50 MP. Non punta ai record di potenza, ma si configura come alternativa più pragmatica rispetto ai modelli sottili più costosi di Samsung e Apple
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 16-07-2006, 12:19   #1
Imrahil
Senior Member
 
L'Avatar di Imrahil
 
Iscritto dal: Sep 2005
Città: 127.0.0.1
Messaggi: 3321
[C] Come si risolve una cosa del genere?

So che è elementare, ma mi serve con una certa urgenza...

Scrivere e far girare un programma C che:
1. legge un numero n minore di 30
2. legge n interi e li mette in un array int a[]
3. legge un intero m,
4. calcola la somma degli elementi dell’array a maggiori o uguali ad m utilizzando la funzione (che si deve definire)
int somma(int a[], int p, int m)
che restituisce la somma dei primi p elementi dell’array a maggiori di
m
5. stampa:
a. la media degli interi letti maggiori di del numero m letto (cioè la somma diviso per quanti sono).

Ad esempio se
Leggo 5 (dimensione dell’array)
Leggo i numeri 2 7 3 4 10
Leggo 4
Stamperò: La somma dei numeri letti maggiori o uguali a di 4 è 21

thx.
__________________

Intel Core 2 Duo E6420 | 2x1 GB Team Group XTreem PC6400 CL4 + 2x2 GB Corsair XMS2 | Gigabyte P35C - DS3R | XFX nVidia GeForce 8800 GTS 640 MB Extreme Edition | Western Digital Raptor 74GB | Samsung HD153WI 1,5 TB | NEC ND-4551A | Seasonic S12 600W | Coolermaster Stacker STC-01 Black | Acer AL1916w. ~ Trattative positive: 30 negative: 1 (Insane_Tech)
Imrahil è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 15:41   #2
Black imp
Senior Member
 
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2662
senza offesa ma già il titolo è strairritante poi esordisci con 'mi serve con una certa urgenza' e poi posti una domanda su una cosa così banale? non sarà il caso che studi?
io te lo faccio anche se vuoi, anche con una certa urgenza... se me lo paghi
Black imp è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 15:58   #3
Imrahil
Senior Member
 
L'Avatar di Imrahil
 
Iscritto dal: Sep 2005
Città: 127.0.0.1
Messaggi: 3321
Boh scusa non mi sembrava di esser stato così sgarbato per meritarmi una risposta del genere... mi serviva sapere come farlo per studiarci un po' sopra, ma non è che obbligo nessuno eh...
__________________

Intel Core 2 Duo E6420 | 2x1 GB Team Group XTreem PC6400 CL4 + 2x2 GB Corsair XMS2 | Gigabyte P35C - DS3R | XFX nVidia GeForce 8800 GTS 640 MB Extreme Edition | Western Digital Raptor 74GB | Samsung HD153WI 1,5 TB | NEC ND-4551A | Seasonic S12 600W | Coolermaster Stacker STC-01 Black | Acer AL1916w. ~ Trattative positive: 30 negative: 1 (Insane_Tech)
Imrahil è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 16:06   #4
Black imp
Senior Member
 
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2662
Quote:
Originariamente inviato da Imrahil
Boh scusa non mi sembrava di esser stato così sgarbato per meritarmi una risposta del genere... mi serviva sapere come farlo per studiarci un po' sopra, ma non è che obbligo nessuno eh...

no no non sei sgarbato figurati ma è come dire 'io non ho voglia di farlo fatelo voi'. inizia a fare qualcosa. avrai un libro da consultare. prova e posta il tuo codice. poi ti si aiuta volentieri.
Black imp è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 17:52   #5
Andlea
Senior Member
 
Iscritto dal: Nov 2004
Messaggi: 357
Inizia a scrivere un po' di codice, altrimenti ti assicuro che non imparerai mai.
Poi quando hai buttato giù qualcosa ti si da una mano volentieri
Andlea è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 18:15   #6
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
no no ma tranquillo, se ci paghi te lo facciamo in 2 minuti contati con la massima urgenza...
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 18:38   #7
Imrahil
Senior Member
 
L'Avatar di Imrahil
 
Iscritto dal: Sep 2005
Città: 127.0.0.1
Messaggi: 3321
Quote:
Originariamente inviato da Black imp
no no non sei sgarbato figurati ma è come dire 'io non ho voglia di farlo fatelo voi'. inizia a fare qualcosa. avrai un libro da consultare. prova e posta il tuo codice. poi ti si aiuta volentieri.
Ok dai forse hai ragione è che proprio non ho capito da dove salta fuori quel "p"... se vuole che sia un input dell'utente o cosa... senza funzioni sono capace a farlo...
__________________

Intel Core 2 Duo E6420 | 2x1 GB Team Group XTreem PC6400 CL4 + 2x2 GB Corsair XMS2 | Gigabyte P35C - DS3R | XFX nVidia GeForce 8800 GTS 640 MB Extreme Edition | Western Digital Raptor 74GB | Samsung HD153WI 1,5 TB | NEC ND-4551A | Seasonic S12 600W | Coolermaster Stacker STC-01 Black | Acer AL1916w. ~ Trattative positive: 30 negative: 1 (Insane_Tech)
Imrahil è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 18:46   #8
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
allora prova a realizzare la funzione somma senza usare il parametro p: vedrai che ti accorgerai che non ci si riesce
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 19:05   #9
Imrahil
Senior Member
 
L'Avatar di Imrahil
 
Iscritto dal: Sep 2005
Città: 127.0.0.1
Messaggi: 3321
Sì ma non ho ben capito cosa rappresenta quella p... cioè se ci sono 3 elementi >= m p è uguale a 3?
__________________

Intel Core 2 Duo E6420 | 2x1 GB Team Group XTreem PC6400 CL4 + 2x2 GB Corsair XMS2 | Gigabyte P35C - DS3R | XFX nVidia GeForce 8800 GTS 640 MB Extreme Edition | Western Digital Raptor 74GB | Samsung HD153WI 1,5 TB | NEC ND-4551A | Seasonic S12 600W | Coolermaster Stacker STC-01 Black | Acer AL1916w. ~ Trattative positive: 30 negative: 1 (Insane_Tech)
Imrahil è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 19:15   #10
Andlea
Senior Member
 
Iscritto dal: Nov 2004
Messaggi: 357
Codice:
che restituisce la somma dei primi p elementi dell’array a maggiori di 
m
P verrà dato dall'utente prima di chiamare somma.
Somma dovrà quindi cercare un numero di elementi <= m, quando ne ha trovati p, li somma e restituisce il valore
Andlea è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 19:37   #11
Imrahil
Senior Member
 
L'Avatar di Imrahil
 
Iscritto dal: Sep 2005
Città: 127.0.0.1
Messaggi: 3321
Ah ok, quindi devo anche chiedere all'utente di inserire p, oltre ad m e agli elementi dell'array!
__________________

Intel Core 2 Duo E6420 | 2x1 GB Team Group XTreem PC6400 CL4 + 2x2 GB Corsair XMS2 | Gigabyte P35C - DS3R | XFX nVidia GeForce 8800 GTS 640 MB Extreme Edition | Western Digital Raptor 74GB | Samsung HD153WI 1,5 TB | NEC ND-4551A | Seasonic S12 600W | Coolermaster Stacker STC-01 Black | Acer AL1916w. ~ Trattative positive: 30 negative: 1 (Insane_Tech)
Imrahil è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 20:37   #12
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
no: p è il numero di elementi dell'array. per il futuro quando ti capita una situazione del genere ripeto: prova a scrivere il codice senza usare quei dati che secondo te sono superflui; ti accorgerai durante la scrittura che superflui non sono.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 16-07-2006, 23:17   #13
Black imp
Senior Member
 
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2662
Quote:
Originariamente inviato da Imrahil
Ah ok, quindi devo anche chiedere all'utente di inserire p, oltre ad m e agli elementi dell'array!
mmmh forse no. il testo è un po' astruso: sembra che tu debba calcolare tutti i numeri più grandi di m che ci sono nell'array ma per farlo devi invocare una funzione che crei tu che usa come parametro int p che ti dice di fermarti ai primi p numeri maggiori di m. quindi tu scrivi la funzione usando il parametro p. ovviamente devi scriverla in modo che se ce n'è meno di p la ricerca non si impalla poi la chiamerai passandole per sicurezza il numero di elementi che ha a[] in questo modo se fossero tutti maggiori di m li troverebbe tutti.

mi raccomando il fatto che il testo chiami a[] e m sia le variabili che i parametri della funzione è solo per comodità e farti capire. la funzione puo avere anche 3 parametri che si chiamano in altro modo ma da fuori non conta.

Ultima modifica di Black imp : 16-07-2006 alle 23:23.
Black imp è offline   Rispondi citando il messaggio o parte di esso
Old 17-07-2006, 10:12   #14
Imrahil
Senior Member
 
L'Avatar di Imrahil
 
Iscritto dal: Sep 2005
Città: 127.0.0.1
Messaggi: 3321
Una cosa che non ho capito è questa (grassetto )

Scrivere e far girare un programma C che:
1. legge un numero n minore di 30
2. legge n interi e li mette in un array int a[]
3. legge un intero m,
4. calcola la somma degli elementi dell’array a maggiori o uguali ad m utilizzando la funzione (che si deve definire)
int somma(int a[], int p, int m)
che restituisce la somma dei primi p elementi dell’array a maggiori di
m

5. stampa:
a. la media degli interi letti maggiori del numero m letto (cioè la somma diviso per quanti sono).

Ad esempio se
Leggo 5 (dimensione dell’array)
Leggo i numeri 2 7 3 4 10
Leggo 4
Stamperò: La somma dei numeri letti maggiori o uguali a di 4 è 21


__________________

Intel Core 2 Duo E6420 | 2x1 GB Team Group XTreem PC6400 CL4 + 2x2 GB Corsair XMS2 | Gigabyte P35C - DS3R | XFX nVidia GeForce 8800 GTS 640 MB Extreme Edition | Western Digital Raptor 74GB | Samsung HD153WI 1,5 TB | NEC ND-4551A | Seasonic S12 600W | Coolermaster Stacker STC-01 Black | Acer AL1916w. ~ Trattative positive: 30 negative: 1 (Insane_Tech)
Imrahil è offline   Rispondi citando il messaggio o parte di esso
Old 17-07-2006, 10:57   #15
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
si, in effetti hai ragione, il punto 4 è impreciso; io considererei come se dicesse sempre "maggiori o uguali"; nella funzione somma, includi nel calcolo anche i numeri uguali ad m.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 17-07-2006, 11:07   #16
Imrahil
Senior Member
 
L'Avatar di Imrahil
 
Iscritto dal: Sep 2005
Città: 127.0.0.1
Messaggi: 3321
Non capisco, perché devo usare una funzione? Non posso usare due array, in modo che il secondo contenga gli elementi >=m del primo?
__________________

Intel Core 2 Duo E6420 | 2x1 GB Team Group XTreem PC6400 CL4 + 2x2 GB Corsair XMS2 | Gigabyte P35C - DS3R | XFX nVidia GeForce 8800 GTS 640 MB Extreme Edition | Western Digital Raptor 74GB | Samsung HD153WI 1,5 TB | NEC ND-4551A | Seasonic S12 600W | Coolermaster Stacker STC-01 Black | Acer AL1916w. ~ Trattative positive: 30 negative: 1 (Insane_Tech)
Imrahil è offline   Rispondi citando il messaggio o parte di esso
Old 17-07-2006, 11:44   #17
AnonimoVeneziano
Senior Member
 
L'Avatar di AnonimoVeneziano
 
Iscritto dal: Aug 2001
Città: San Francisco, CA, USA
Messaggi: 13827
Quote:
Originariamente inviato da Imrahil
Non capisco, perché devo usare una funzione? Non posso usare due array, in modo che il secondo contenga gli elementi >=m del primo?

I testi dei problemi li fanno per verificare se hai capito come funzionano le cose, sicuramente ci saranno infinite soluzioni diverse e magari più eleganti, ma ti chiedono di usare una funzione per imparare a progettare una funzione in C (se è una esercitazione) o per verificare se lo sai fare (se è un esame)

Ciao
__________________
GPU Compiler Engineer
AnonimoVeneziano è offline   Rispondi citando il messaggio o parte di esso
Old 17-07-2006, 14:28   #18
Imrahil
Senior Member
 
L'Avatar di Imrahil
 
Iscritto dal: Sep 2005
Città: 127.0.0.1
Messaggi: 3321
Adesso ad esempio perché mi da segmentation fault?

Codice:
#include <stdio.h>

int main()

{ 
	int n;
	
	printf("Inserisci il numero massimo di elementi dell'array (massimo 30)\n");
	scanf("%d", &n);
	if (n <= 30){
	
	int i;
	int j;
	int a[n];
	int b[j];
	int m;
	int total;
	int average;
	
		for(i = 0; i < n; i++) {
		printf("Inserisci l'elemento in posizione i = %d dell'array:\n", i);
		scanf("%d", &a[i]);
		}
				

		printf( "%5s%20s", "Pos array", "Elemento array\n");
	for(i=0; i < n; i++) {
		printf("%5d%20d\n", i, a[i]);
		
}


}

	else printf("La dimensione massima dell'array deve essere 30!\n");


	return 0;
	 
}
__________________

Intel Core 2 Duo E6420 | 2x1 GB Team Group XTreem PC6400 CL4 + 2x2 GB Corsair XMS2 | Gigabyte P35C - DS3R | XFX nVidia GeForce 8800 GTS 640 MB Extreme Edition | Western Digital Raptor 74GB | Samsung HD153WI 1,5 TB | NEC ND-4551A | Seasonic S12 600W | Coolermaster Stacker STC-01 Black | Acer AL1916w. ~ Trattative positive: 30 negative: 1 (Insane_Tech)
Imrahil è offline   Rispondi citando il messaggio o parte di esso
Old 17-07-2006, 14:36   #19
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
non riesco ad aprire l'allegato, cmq di solito segmentation fault avviene se andando a leggere gli elementi dell'array sfondi l'array andando a leggere dati nn appartenenti al tuo programma.
controlla di far variare l'indice dell'array da 0 a LUNGHEZZA_ARRAY-1
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 17-07-2006, 14:45   #20
Black imp
Senior Member
 
Iscritto dal: Nov 2000
Città: MILANO
Messaggi: 2662
la j non è inizializzata e la usi per allocare un array b di dimensioni ignote quindi.

Ultima modifica di Black imp : 17-07-2006 alle 14:50.
Black imp è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026 Display, mini PC, periferiche e networking: le n...
Le novità ASUS per il 2026 nel settore dei PC desktop Le novità ASUS per il 2026 nel settore de...
MaiaSpace ed Eutelsat stringono un accor...
Motorola edge 60 neo sorprende: compatto...
Zeekr 007 e 007GT si aggiornano: piattaf...
ASUS ROG Swift OLED PG27AQWP-W: 720 Hz e...
È super il prezzo del robot rasae...
MediaTek aggiorna la gamma di Dimensity:...
Foto intime sottratte dai telefoni in ri...
In Cina approvate nuove regole per il ri...
L'accordo multi-miliardario tra Google e...
Alcuni PC Windows 11 non si spengono dop...
Apple sta per lanciare un nuovo monitor:...
Mondraker Crafty Unlimited Gulf Edition,...
Amazon, altro rilancio per Haul: sconto ...
Chiusi in un bunker per soldi: Fallout d...
Yakuza Kiwami 3 and Dark Ties avrà...
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: 17:34.


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