Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
Un proiettore economico, che fa della portabilità e immediatezza i suoi punti di forza. Adatto per una camera da letto o per la casa vacanze, è basato su sistema proprietario Linux ma offre piena compatibilità ufficiale a Netflix
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
Un notebook sviluppato in collaborazione con GoPro ma che risponde al meglio alle necessità di tutti coloro che creano contenuti video: robustezza, design, potenza di calcolo e funzionalità si abbinano al meglio tra di loro, pur se a prezzo di un costo elevato per via della tanta memoria onboard
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Ho affidato ai due modelli lo stesso mestiere ma non lo stesso identico prompt: trasformare una storia illustrata in un video usando una RTX 3090 e modelli locali. Ne sono usciti due film, due applicazioni e due idee opposte di efficienza. Fucina, progettata con Fable 5, colpisce di più nei primi secondi. Storyboard Studio, costruito con ChatGPT/Codex, regge meglio sulla distanza e vince il confronto complessivo, ma di stretta misura
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-06-2015, 19:56   #1
Bigboss98
Junior Member
 
Iscritto dal: Jun 2015
Messaggi: 3
[C]Grafico della tartaruga

Sto cercando di creare il grafico della tartaruga in C solo che incontro un errore di segmentazione.
Potreste aiutarmi
Codice:
#include <stdio.h> 
#define SIZE_ROW 50
#define SIZE_COLUMN 50

int draw ( int pen , int position , int grafico[][SIZE_COLUMN] , int move , int current_row , int current_column  );//function prototype

int print ( int grafico[][SIZE_COLUMN] );//function prototype

int main ( void )
{
	 
	int grafico[SIZE_ROW][SIZE_COLUMN];//declare the array where there is the graphic
	int command = 1;//declare the variables where you put the command
	int move;
	int pen = 1;
	int position = 7;
	int current_row = 0;
	int current_column = 0;

	while (command != 9)
	{
		printf("Comando:");
		scanf("%d",&command);
		
		switch ( command )
		{	
			case 5:
                                 printf("Movimento:");
                                 scanf("%d",&move);
				 grafico[SIZE_ROW][SIZE_COLUMN] = draw ( pen , position , grafico[SIZE_ROW][SIZE_COLUMN] , move , current_row , current_column );
                                 break;
			case 6:
				 print ( grafico[SIZE_ROW][SIZE_COLUMN]); // call function print
				 break;
			
			

			case 9:
				 break;
	
		}
	}
	
	printf("The END");//the end of the programm

	return 0;

}



int draw ( int pen , int position , int grafico[][SIZE_COLUMN] , int move , int current_row , int current_column )
{
	int x;
	int y;	

	if (pen == 2)
	{
		switch (position )
		{
			case 3:
					for (x = current_row ;x > move ;x--)
					{
						if ( current_row > 0 && x < SIZE_COLUMN)
						{
							grafico[x][current_column] = 1;
						}
						else
                                                {
                                                    break;
                                                }
	
					}

					

					break;

			case 4:
					for ( x = current_row;x < move;x++)
					{
						if (current_row > 0 && x < SIZE_COLUMN )
						{
							grafico[x][current_column] = 1;
						}
						else
                                                {
                                                    break;
                                                }
					}
					
					

					break;

			case 7:
					for ( x = current_column;x > move;x--)
					{
						if (current_column > 0 && x < SIZE_COLUMN  )
						{
							grafico[current_row][x] = 1;
						}
						else
                                                {
                                                    break;
                                                }
					}
					
					

					break;
					
			case 8:
					for ( x = current_column;x < move;x++)
					{
						if ( current_column > 0 && x < SIZE_COLUMN )
						{
							grafico[current_row][x] = 1;
						}
						else
                                                {
                                                    break;
                                                }
					}
					
					

					break;

		}	

	}
	
	else
	{
		switch (position )
		{
			case 3:
					for (x = current_row;x > move;x--)
					{
						if ( current_row > 0 && x < SIZE_COLUMN)
						{
							grafico[x][current_column] = 0;
						}
						else
                                                {
                                                    break;
                                                }
	
					}

					

					break;

			case 4:
					for ( x = current_row;x < move;x++)
					{
						if ( current_row > 0 && x < SIZE_COLUMN)
						{
							grafico[x][current_column] = 0;
						}
						else
                                                {
                                                    break;
                                                }
					}
					
					

					break;

			case 7:
					for ( x = current_column;x > move;x--)
					{
						if (current_column > 0 && x < SIZE_COLUMN )
						{
							grafico[current_row][x] = 0;
						}
						else
                                                {
                                                    break;
                                                }
					}
					
					
					break;
					
			case 8:
					for ( x = current_column;x < move;x++)
					{
						if ( current_column > 0 && x < SIZE_COLUMN)
						{
							grafico[current_row][x] = 0;
						}
						else
                                                {
                                                    break;
                                                }
					}
					
					

					break;

		}	

	}

	return grafico[SIZE_ROW][SIZE_COLUMN];

}

int print ( int grafico[SIZE_ROW][SIZE_COLUMN] )
{
	int x = 0;	
	int y = 0;

	for ( x = 0;x < SIZE_ROW;x++)
	{
		for ( y = 0; y < SIZE_COLUMN;y++)
		{
			if ( grafico[x][y] == 1)
			{
				printf("*");
			}
		
		}

	}

}
Bigboss98 è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2015, 06:37   #2
gianmpu
Senior Member
 
Iscritto dal: Oct 2010
Messaggi: 1609
Nel main grafico viene dichiarato come int e non come array

Inviato dal mio GT-N5100 utilizzando Tapatalk
__________________
Trattative nel mercatino: IronHead - fybpeppe - xcavax
Utenti assolutamente DA EVITARE: devilred
"Chi c**a sott' 'a neve, pure si ffa 'a bbuca e poi 'a copre, quanno 'a neve se scioje, 'a mm***a vie' sempre fori" T. Milian
gianmpu è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2015, 09:41   #3
vbextreme
Member
 
L'Avatar di vbextreme
 
Iscritto dal: Dec 2013
Messaggi: 90
draw ritorna un elemento di graphic che non esiste, per passare la matrice basta il nome e non va aggiunta nessuna parentesi quadra
in piu usi !a matrice non inizializzata.
che compilatore usi?
__________________
Easy framework per il linguaggio C.
vbextreme hack your life
vbextreme è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2015, 10:27   #4
Bigboss98
Junior Member
 
Iscritto dal: Jun 2015
Messaggi: 3
Ok grazie sono riuscito a risolvere.
Bigboss98 è offline   Rispondi citando il messaggio o parte di esso
Old 16-06-2015, 20:36   #5
Bigboss98
Junior Member
 
Iscritto dal: Jun 2015
Messaggi: 3
Scusate ho ancora un problema. Non mi imposta gli array uguale a 1 nella funzione draw
Bigboss98 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
ASUS ProArt GoPro Edition è il notebook compatto per chi crea ASUS ProArt GoPro Edition è il notebook c...
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090 Fable e Sol a confronto: due cartoni animati cre...
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
Rocket Factory Augsburg ha riscontrato u...
Blue Origin sta ricostruendo e modifican...
BMW taglierà 8.000 posti di lavor...
7.600 annunci di nudify app su Meta, tut...
Visa ne lascia a casa 2600: intelligenza...
Batterie sostituibili? Per Logitech, gli...
IBM: l'IA riduce i costi delle violazion...
Logitech G Cloud bocciata dal pubblico, ...
NVIDIA RTX Spark, provato un prototipo c...
Sony e Fujifilm: evacuate le fabbriche d...
Starship: Ship 40 continua a galleggiare...
UMC investe su Singapore e Tainan per ri...
Steam Machine, novità sulle code:...
Anche Foxconn abbandona VMware e sceglie...
Windows 11 migliora l'accessibilit&agrav...
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: 05:44.


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