Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-01-2007, 18:24   #1
Veon
Member
 
Iscritto dal: Apr 2006
Messaggi: 74
[C] Reperire programmi

Salve ragazzi e ragazze

Sapreste dirmi un sito dal quale poter reperire programmi scritti in C?

Visto che volente o nolente devo imparare a programmare in C una serie di programmi già fatti mi sarebbe d'aiuto al fine di comprendere meglio i meccanismi di funzionamento

Vi ringrazio in anticipo...
Veon è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2007, 18:26   #2
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
solo facendo una ricerca generale viene fuori questo:

http://www.google.it/search?hl=it&q=...n+Google&meta=


Spero tu possa trovare qualcosa di utile
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2007, 18:36   #3
Veon
Member
 
Iscritto dal: Apr 2006
Messaggi: 74
Si i motori di ricerca li ho provati

Solo che ho trovato solo siti con qualche programma (magari specifico), non una vera e proprio raccolta composta da svariati programmi!!
Veon è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2007, 20:37   #4
mapomapo
Senior Member
 
L'Avatar di mapomapo
 
Iscritto dal: May 2005
Città: Bari
Messaggi: 349
secondo me impieghi meno tempo a prendere un libro, studiare velocemente la sintassi e a provare a programmare tu che non ad interpretare del codice scritto da un altro programmatore...
comunque ti lascio un po' di sorgenti, dovessero servirti..

Codice:
//{}
/*Inserita una stringa di caratteri da 0 a 9, intervallata da un operatore * o +, far eseguire l'espressione dopo averla opportunamente convertita*/

#include <stdio.h>

int main()
{
	int i=1,j=1; //Contatori.."i" per scorrere il vettore, "j" per l'user-friendly..
	char espr[11]; //Stringa di input dell'utente..
	int esprnum[11]; //Stringa di conversione..
	int risultato=0;

	printf("Inserire il valore %d (da 0 a 9): ", j); //Lascio fuori il primo valore, l'array è dispari..
	do
		espr[0]=getchar();
	while(espr[0]!='0' && espr[0]!='1' && espr[0]!='2' && espr[0]!='3' && espr[0]!='4' && espr[0]!='5' && espr[0]!='6' && espr[0]!='7' && espr[0]!='8' && espr[0]!='9'); //Facciamo inputtare solo caratteri numerici..

	j++; //Abbiamo inserito il primo valore, incrementiamo..

	while(i<11)
	{
		printf("Inserire un operatore valido (* o +): ");
		do	
			espr[i]=getchar();
		while(espr[i]!='*' && espr[i]!='+'); //Facciamo inputtare solo i due operatori permessi..
		i++;	
		printf("Inserire il valore %d (da 0 a 9): ", j);
		do	
			espr[i]=getchar();
		while(espr[i]!='0' && espr[i]!='1' && espr[i]!='2' && espr[i]!='3' && espr[i]!='4' && espr[i]!='5' && espr[i]!='6' && espr[i]!='7' && espr[i]!='8' && espr[i]!='9'); //Come sopra..
		i++;
		j++; //Come sopra..
	}

	for(i=0;i<11;i++) //Inizializiamo l'array con tutti 0..
		esprnum[i]=0;

	for(i=0;i<11;i++)
		switch(espr[i]) //Convertiamo i caratteri numerici nei corrispettivi interi..spostandoci nell'altro array..
		{
			case '0':
				esprnum[i]=0;
			break;
			case '1':
				esprnum[i]=1;
			break;
			case '2':
				esprnum[i]=2;
			break;
			case '3':
				esprnum[i]=3;
			break;
			case '4':
				esprnum[i]=4;
			break;
			case '5':
				esprnum[i]=5;
			break;
			case '6':
				esprnum[i]=6;
			break;
			case '7':
				esprnum[i]=7;
			break;
			case '8':
				esprnum[i]=8;
			break;
			case '9':
				esprnum[i]=9;
			break;
			default: //Col default saltiamo gli "operatori"..
			break;
		}

	for(i=0;i<11;i++)
		if(espr[i]=='*') //Controlliamo che l'array dell'utente abbia un operatore "*"..
		{
			esprnum[i+1]=esprnum[i-1]*esprnum[i+1]; //Moltiplichiamo i termini a sx e a dx dell'operatore..
			esprnum[i-1]=0; //Cancelliamo il primo addendo..
		}

	for(i=0;i<11;i++)
		risultato=risultato+esprnum[i]; //Sommiamo i termini rimasti nell'array..

	printf("\nIl risultato dell'espressione e': %d\n", risultato);
	return 0;

}
Codice:
//{}
/*Dato un numero, fornire una scelta tramite uno switch e ripetere l'operazione finchè non viene digitato il carattere di escape Q*/
#include <stdio.h>
#include <math.h>

int main()
{
	int numero;
	char scelta;
	int x;

	do
	{
		printf("Inserire un numero: ");
		scanf("%d", &numero);
		printf("\n");
		printf("Prego effettuare una scelta\n"); //Stampiamo il menu..
		printf("a. Radice quadrata del numero\n");
		printf("A. Numero elevato al quadrato\n");
		printf("@. Numero elevato a x\n");
		printf("Q. Esci del programma\n\n");
		do //Escamotage per ovviare al \n memorizzato nel buffer dalla precedente scanf..
			scelta=getchar();
		while(scelta=='\n');
		switch(scelta)
		{
			case 'a':
				printf("La radice quadrata di %d e': %f\n", numero, sqrt(numero));
			break;
	
			case 'A':
				printf("Il quadrato di %d e': %f\n", numero, pow(numero,2));
			break;
			case '@':
			{
				printf("Inserire l'esponente a cui elevare %d (inserire un num. intero): ", numero);
				scanf("%d", &x);
				printf("%d elevato a %d e': %f\n", numero, x, pow(numero,x));
			}
			break;
			default:
			break;
		}
	}while(scelta!='Q'); //Carattere di quit..
}
Codice:
/*Esempio di semplici funzioni di caricamento e stampa a schermo di un array*/
#include <stdio.h>
#define N 10

void carica_vettore(int []);
void stampa_vettore(int []);

int main()
{
	int v[N];

	carica_vettore(v);
	printf("\n");
	stampa_vettore(v);

}

void carica_vettore(int a[])
{
	int i=0;
	for(;i<N;i++)
	{
		printf("Inserire il %d° valore: ", i+1);
		scanf("%d", &a[i]);
	}
}

void stampa_vettore(int a[])
{
	int i=0;
	for(;i<N;i++)
		printf("Il %d° valore e': %d\n", i+1, a[i]);
}
Codice:
/*Dati un massimo di 100 punti, calcolare la lunghezza della linea spezzata o, se reinserito il primo valore, il perimetro della figura ricavata*/
#include <stdio.h>
#include <math.h>

int main()
{
	int x[100],y[100];
	float p[99];
	int i=0,j=0;
	int flag=0;
	float perimetro=0;

	printf("\nDati un massimo di 100 punti, calcolare la lunghezza della linea spezzata o,\n");
	printf("se reinserito il primo valore, il perimetro della figura ricavata.\n\n");
	printf("Inserire la %d^ ascissa: ", i+1);	//Carichiamo il primo valore altrimenti ciao ciao flag :D
	scanf("%d", &x[i]);
	printf("Inserire la %d^ ordinata: ", i+1);
	scanf("%d", &y[i]);	
	for(i=1;i<100 && flag==0;i++)			//Carichiamo gli altri valori...ora la flag non inchiomma :P
	{
		printf("Inserire la %d^ ascissa: ", i+1);
		scanf("%d", &x[i]);
		printf("Inserire la %d^ ordinata: ", i+1);
		scanf("%d", &y[i]);
		if(x[i]==x[0] && y[i]==y[0])		//Un bel controllino, giusto per gradire.. :D:D
			flag=1;
	}
	j=i;						//Lode e gloria a questa piccola assegnazione xD
	for(i=1;i<j;i++)
	{
		p[i-1]=sqrt(pow((x[i-1]-x[i]),2)+pow((y[i-1]-y[i]),2)); //Calcoliamo le distanze..geometria docet!
	}
	for(i=0;i<j;i++)
	{
		perimetro=perimetro+p[i];		//Un po' d'ordine, variabilizziamo il perimetro :D
	}
	if(flag==0)
		printf("La lunghezza della linea è: %f\n", perimetro); //Tocco di fino, permettetemelo!
	else
		printf("Il perimetro della figura ricavata è: %f\n", perimetro);
}
Codice:
//{}
/*Esempio utilizzo malloc*/

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

int main()
{
	int i;
	int n;
	int *v;

	printf("Quanti numeri? ");
	scanf("%d", &n);
	v=(int *)malloc(n*sizeof(int));

	for(i=0;i<n;i++)
		scanf("%d", &v[i]);

	for(i=0;i<n;i++)
		printf("%d\n", v[i]);
}
__________________
Si può vincere una guerra in due...o forse anche da solo. Si può estrarre il cuore anche al più nero assassino, ma è più difficile cambiare un'idea!
mapomapo è offline   Rispondi citando il messaggio o parte di esso
Old 22-01-2007, 21:33   #5
Veon
Member
 
Iscritto dal: Apr 2006
Messaggi: 74
Grazie per i sorgenti...
Cmq il libro e la teoria la sto studiando, però se mi chiedo di fare funzioni arzigogolate trovo difficoltà..
Per questo cercavo sorgenti da cui prendere appunti..
Veon è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2007, 09:08   #6
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Su sourceforge ne trovi in quantita', oppure sui siti delle distribuzioni linux
e in mille altri posti.
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2007, 12:29   #7
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Oppure vai su
http://www.google.com/codesearch
e cerchi lang:c, eventualmente insieme ad altre parole.
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2007, 22:05   #8
Veon
Member
 
Iscritto dal: Apr 2006
Messaggi: 74
Mh va bene grazie, molto utile il motore di ricerca per suorce codes
Veon è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Dopo 23 anni di silenzio, Warcraft 3 spi...
Roblox sfida l'ecosistema gaming: app st...
OpenAI accusata di plagio dai migliori m...
Altro attacco hacker dell'IA: gli agenti...
Stiamo davvero perdendo il controllo del...
Microsoft perde un pilastro: Frank Shaw ...
Diablo V annunciato a sorpresa: il colpo...
Meno di 5 euro per il 5G: l'offerta Kena...
World of Warcraft: Forever è il Classic+...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
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: 22:50.


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