Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco
Deebot X11 Omnicyclone implementa tutte le ultime tecnologie Ecovacs per l'aspirazione dei pavimenti di casa e il loro lavaggio, con una novità: nella base di ricarica non c'è più il sacchetto di raccolta dello sporco, sostituito da un aspirapolvere ciclonico che accumula tutto in un contenitore rigido
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Grazie ad un mocio rotante che viene costantemente bagnato e pulito, Narwal Flow assicura un completo e capillare lavaggio dei pavimenti di casa. La logica di intellignza artificiale integrata guida nella pulizia tra i diversi locali, sfruttando un motore di aspirazione molto potente e un sistema basculante per la spazzola molto efficace sui tappeti di casa
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi
Con un prezzo di 2.999 euro, il Panasonic Z95BEG entra nella fascia ultra-premium dei TV OLED: pannello Primary RGB Tandem, sistema di raffreddamento ThermalFlow, audio Technics integrato e funzioni gaming avanzate lo pongono come un punto di riferimento
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-11-2013, 14:18   #1
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
[c]strano problema con una funzione che richiede un char *

buon giorno a tutti, come da titolo ho uno strano problema con una funzione che richiede in ingresso un char *.
io ho un vettore di struct, ogni elemento ha una variabile char *.
all'interno del ciclo utilizzo la suddetta funzione per togliere le parentesi ad una stringa che gli viene passata.
per esempio al primo ciclo la stringa da analizzare è la seguente : ((3+2+1))
mi restituisce : (3+2+1).
e lo salva nell'elemento successivo nel vettore di struct.
aumento il contatore.
al ciclo successivo gli passo (3+2+1).
pero' facendo un printf all'interno della funzione:
printf("\nStringa : %s",stringa);
a monitor non mi mostra niente.

quindi l'errore sta nel passaggio del char *stringa alla funzione.

qualcuno può aiutarmi ?
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 14:23   #2
bancodeipugni
Senior Member
 
L'Avatar di bancodeipugni
 
Iscritto dal: Nov 2013
Città: Nel cuore dell'8 Mile di Detroit
Messaggi: 3732
se posti il codice forse si puo' guardare
bancodeipugni è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 14:31   #3
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
eh è un po lunghetto ma cercherò di mettere solo le parti essenziali.
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 14:36   #4
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
questo è il main :
Codice:
typedef struct 
{
	int pid;
	char *stringa;
}Associazione;
int main()
{
	//vettore di struct per mettere in relazione i pid con le stringhe da eseguire
	Associazione vet[20];
	
	//Variabili
	int ProcessoPadre;
	int i=0;
	char espressione[20];
	ProcessoPadre = getpid();
	
	//Acquisisco il numero dei processi
	printf("Inserire l'espressione : ");
	scanf("%s",espressione);
	
	vet[0].pid=ProcessoPadre;
	vet[0].stringa=espressione;
	
	int parentesi = 0;
	while(parentesi==0)
	{
		
		printf("i=%d\n",i);
		printf("parentesi=%d\n",parentesi);
		printf("sottotringa di partenza : %s\n",vet[i].stringa);
		parentesi=controllo_parentesi(vet[i].stringa);
		printf("parentesi dopo controllo=%d\n",parentesi);
		if(parentesi==0)
		{
			printf("i=%d\n",i);
			printf("sottotringa di partenza : %s\n",vet[i].stringa);
			i=i+1;
			int a=i;
			printf("a=%d\n",i);
			i--;
			char *str=vet[i].stringa;
			printf("str = %s\n",str);
			int ctrl = sotto_operazione(str,vet,a);
			printf("i=%d\n",i);
			printf("sottotringa ricavata : %s\n",vet[a].stringa);
			if(ctrl!=0)
				printf("ERRORE, parentesi non corrette");
			else
				i++;
		}
			
	}
	//trovo il risultato di una stringa, gli mando anche il pid del processo così poi mi crea automaticamente il file
	esegui_operazioni(7,vet[i].stringa);
        return 0;
}
queste sono le funzioni che eliminano le parentesi:
Codice:
void *taglia(char *stringa,int inizio, int fine, Associazione *vet, int posizione)
{
	printf("taglia");
	char risultato[fine-inizio];
	int i=0,k=0;
	while(stringa[i]!=0)
	{
		if(i>inizio && i<fine)
		{
			risultato[k]=stringa[i];
			k++;
		}
		i++;
	}
	printf("\n\n\n\n stringa : %s\nposizione : %d\nrisultato : %s\n",stringa,posizione,risultato);
	vet[posizione].stringa = risultato;
	printf("\nvet[%d].stringa = %s\n",posizione,vet[posizione].stringa);
	
	return 0;
}

int sotto_operazione(char *stringa, Associazione *vet, int posizione)
{
	printf("sotto operazione");
	printf("\n\n\n\n stringa : %s\nposizione : %d\n",stringa,posizione);
	int a=0;
	int i=0;
	int k=0;
	while(stringa[i]!=0)
	{
		if(stringa[i]=='(')
		{
			a++;
		}
		if(stringa[i]==')')
		{
			a--;
			if(a==0)
				break;
		}
		
		i++;
	}
	if(a!=0)
		return (a);
	taglia(stringa,k,i,vet,posizione);
	return 0;
}
ho messo in grassetto dove c'è il malfunzionamento.
so che ci sono molti printf, li utilizzavo per vedere cosa non va.
spero riusciate a capirci qualcosa.
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "

Ultima modifica di dyablo96 : 24-11-2013 alle 14:37. Motivo: edit
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 15:08   #5
bancodeipugni
Senior Member
 
L'Avatar di bancodeipugni
 
Iscritto dal: Nov 2013
Città: Nel cuore dell'8 Mile di Detroit
Messaggi: 3732
vet[0].stringa=espressione;

con
espressione[20]

non mi piace
puo' dare problemi

fai lo strcpy e dichiari il record:

Codice:
typedef struct 
{
	int pid;
	char stringa[20];
}Associazione;

...
strcpy(vet[0].stringa, espressione);
oltre al fatto che manca un controllo sulla lunghezza di espressione inserita dallo scanf

poi vado avanti a leggere
bancodeipugni è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 15:29   #6
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
Nn credo di poter usare l'strcpy perché prima di copiarlo devo togliergli le parentesi, ma se non riesco a passarlo alla funzione non posso togliere le parentesi e quindi neanche copiarlo sulla posizione del vettore
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 15:56   #7
bancodeipugni
Senior Member
 
L'Avatar di bancodeipugni
 
Iscritto dal: Nov 2013
Città: Nel cuore dell'8 Mile di Detroit
Messaggi: 3732
sto parlando dell'inizio del codice, nella main prima di fare tutto
bancodeipugni è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 16:15   #8
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
Ok, ho capito xo li nn cis sono mai problemi, il problema é semprenel second ciclo al passaggio della stringa.
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 16:58   #9
lorenzo001
Senior Member
 
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
Come ti è stato detto, questa

vet[0].stringa=espressione;

e anche questa

vet[posizione].stringa = risultato;

non fanno quello che pensi scritte in quel modo.

Devi assolutamente allocare lo spazio per la stringa e copiare con la strcpy

vet[0].stringa = (char *)malloc(strlen(espressione)+1);
strcpy(vet[0].stringa, espressione);

vet[posizione].stringa = (char *)malloc(strlen(risultato)+1);
strcpy(vet[posizione].stringa, risultato);
lorenzo001 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 17:46   #10
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
ok, appena posso provo e vi faccio sapere, comunque mi sembra strano che al primo ciclo funzioni mentre al secondo no
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 17:55   #11
lorenzo001
Senior Member
 
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
A te pare strano, a me no.
lorenzo001 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 17:57   #12
bancodeipugni
Senior Member
 
L'Avatar di bancodeipugni
 
Iscritto dal: Nov 2013
Città: Nel cuore dell'8 Mile di Detroit
Messaggi: 3732
a me pare strano che funzioni anche il primo
forse perché avevi provato con una stringa molto semplice
bancodeipugni è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 18:22   #13
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
bho, io ho messo (3+2+1), facendo un solo giro funziona.
mettendo ((3+2+1)) il primo giro lo fa e infatti grazie ai printf vedo che mi stampa (3+2+1) poi però appena viene passato alla funzione chiedendogli di stampare no stampa niente.
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 18:39   #14
lorenzo001
Senior Member
 
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
Apporta le modifiche, fai le prove e se ci sono altri problemi, mostra nuovamente il codice modificato e spiega ...
lorenzo001 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 19:58   #15
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
non posso postarvi il codice perchè sono via e scrivo col cellulare ma per maggior chiarezza posso postarvi la consegna che ci ha dato il nostro professore :

Strutturare un parser per delle espressioni solo numeriche.
Data a padre una espressione del tipo (((7+3)/6)+(4+(5*3)))
vengono gestite le precedenze tra operatori solo con il raggruppamento a parentesi.
opzione: il primo passo quindi sara' del padre che nel rispetto delle regole matematiche aggiunge eventuali parentesi per dipanare questi dubbi di precedenza.
Ogni "sottooperazione" delimitata da parentesi verrà trattata in fork da un figlio in modo da avere il calcolo concorrente della stessa.
Per restituire il risultato del figlio si usino i file i questo modo:
- il processo si annota la porzione di espressione abbinandola al pid del figlio che la tratta.
- il processo aspetta il risultato con un waitpid specifico
- il processo legge il risultato scritto da filgio nel file <nomeprogramma>-<pid>.txt
il padre a richiesta cancella anche i file .txt intermedi.
opzione2: scrivere un file di log che tracci la generazione dei figli con le rispettive porzioni di espressione


spero possiate capire meglio.
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "

Ultima modifica di dyablo96 : 24-11-2013 alle 19:59. Motivo: edit
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 20:55   #16
lorenzo001
Senior Member
 
Iscritto dal: Jul 2008
Città: Roma
Messaggi: 542
A me la consegna non interessa perché non ti voglio fare l'esercizio.

Ti posso dare una mano a correggere gli errori e ancora dovresti dire se hai rimediato come ti ho suggerito ...
lorenzo001 è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 21:29   #17
bancodeipugni
Senior Member
 
L'Avatar di bancodeipugni
 
Iscritto dal: Nov 2013
Città: Nel cuore dell'8 Mile di Detroit
Messaggi: 3732
fai una prova cosi':

1/(1+(3-(8*(3+1)-4)+5)-6)

e vedi qual è l'ultimo output se solo il secondo o l'ultimo
bancodeipugni è offline   Rispondi citando il messaggio o parte di esso
Old 24-11-2013, 21:36   #18
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
So che mi puoi fare l'esercizio, e nn ti chiedo di farlo. Domani provo l'espressione e vi faccio sapere.
Doman
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2013, 15:15   #19
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
ho provato con quello che mi avete detto, malloc e strcpy ma con entrambi mi vengono stampati caratteri asci a caso.
ho provato come mi hai detto te bancodeipugni ma si ferma comunque al secondo giro.
ho provato a mettere una variabile globale da modificare prima del passaggio alla funzione ma anche quella al primo giro funziona mentre il secondo risulta vuota.
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2013, 15:57   #20
dyablo96
Senior Member
 
L'Avatar di dyablo96
 
Iscritto dal: Mar 2013
Città: vicino vicenza
Messaggi: 787
credo ci sia stato un miglioramento, vi posto il risultato:
Codice:
Inserire l'espressione : ((3+2))
i=0
parentesi=0
parentesi dopo controllo=0
sottotringa di partenza : ((3+2))

sotto operazione
stringa : ((3+2))
posizione : 1

taglia
stringa : ((3+2))
posizione : 1
risultato : (3+2)�r��8Y�

vet[1].stringa = (3+2)�r��8Y�
sottotringa ricavata : (3+2)�r��8Y�
i=1
parentesi=0
parentesi dopo controllo=0
sottotringa di partenza : (3+2)�r��8Y�

sotto operazione
stringa : (3+2)�r��8Y�
posizione : 2

taglia
stringa : (3+2)�r��8Y�
posizione : 2
risultato : 3+)�r��8Y�

vet[2].stringa = 3+)�r��8Y�
sottotringa ricavata : 3+)�r��8Y�
i=2
parentesi=0
parentesi dopo controllo=-1
Segmentation fault (core dumped)
almeno adesso la stringa viene passata anche nel secondo ciclo, però viene lavorata in modo sbagliata dal primo ciclo che gli aggiunge quei caratteri asci e quindi poi si sporca tutta la prosecuzione.

al codice ho sostituito le parti che mi dicevate con i malloc e gli strcpy.

credo che perchè funzioni bisogna togliergli quello che si forma dietro, sapete come fare?
__________________
il mio pc [Case] Cooler Master Elite 370[RAM]Vengeance Blue1600MHz 8GB cl9[Scheda Madre AsRock B75 PRO3-M[CPU] Intel i5-3470 3,2GHz[Masterizzatore Interno] Samsung SH-224BB 24x[Alimentatore PC] Seasonic S12II-520 520W 80+ Bronze[Hard Disk Interno] 3.5" Toshiba 500GB+ WD Caviar Blue 500GB[vga] sapphire 7870[monitor] LG 22EA53VQ-P LCD IPS LED 21.5 "

Ultima modifica di dyablo96 : 25-11-2013 alle 16:20. Motivo: edit
dyablo96 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Ecovacs Deebot X11 Omnicyclone: niente più sacchetto per lo sporco Ecovacs Deebot X11 Omnicyclone: niente più...
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Recensione Google Pixel 10 Pro XL: uno zoom 100x assurdo sempre in tasca (e molto altro) Recensione Google Pixel 10 Pro XL: uno zoom 100x...
Google contraddice se stessa: 'Il web ap...
La nuova PlayStation 6 seguirà il...
Aspirapolvere 21000Pa per auto a 24,99€,...
Scopri i limiti nascosti di Gemini: Goog...
Intel cambia tutto (di nuovo): chi entra...
La sorpresa di IAA Mobility è Xyt...
Le vetture elettriche Opel GSE: Mokka GS...
Star Wars: Knight of the Old Republic Re...
Scoperta un'enorme rete IPTV da pi&ugrav...
Anche Life is Strange diventerà u...
QSAN presenta la nuova serie XN1 di NAS ...
Abbiamo visto in anteprima nuova Renault...
Come ricaricare i veicoli elettrici sino...
Microsoft annuncia nuovi servizi azienda...
Roborock QV 35S spazza via lo sporco: po...
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: 07:17.


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