|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2008
Città: Firenze
Messaggi: 62
|
[C++] problema script
#include <stdio.h>
main (){ se (1 == 1){ printf ("Hello World"); } } Avrete notato che in questo script c'è un'errore.. Con una sola riga di codice è possibile farlo funzionare.. La linea puo essere solo aggiunta, quindi non è possibile modificarne un'altra.. Scoprite la linea da aggiungere, sarà quella la vostra password.. Nota: la password va scritta rimuovendo tutti gli spazi, quindi se fosse "while (1 == 1){" diventerebbe "while(1==1){"
__________________
Windows Vista Ultimate 32bit - Amd Athlon64 X2 5000+ Asus M2N Socket AM2 - 2Gb - EN8600GTS Silent Seagate Barracuda 250 GB - Cooler Master Centurion 5 |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
A occhio c'è ben più di un solo errore: manca ad esempio il tipo di ritorno del main (e relativo return statement finale nel corpo).
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
|
|
|
|
#3 | |
|
Member
Iscritto dal: Jan 2008
Città: Firenze
Messaggi: 62
|
Quote:
voglio sapere come si fa a farlo funzionare, mantenendolo cosi com'è, e aggiungendo una sola riga
__________________
Windows Vista Ultimate 32bit - Amd Athlon64 X2 5000+ Asus M2N Socket AM2 - 2Gb - EN8600GTS Silent Seagate Barracuda 250 GB - Cooler Master Centurion 5 |
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Mar 2007
Messaggi: 1792
|
Quote:
|
|
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: Jan 2008
Città: Firenze
Messaggi: 62
|
Quote:
__________________
Windows Vista Ultimate 32bit - Amd Athlon64 X2 5000+ Asus M2N Socket AM2 - 2Gb - EN8600GTS Silent Seagate Barracuda 250 GB - Cooler Master Centurion 5 |
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Nov 2008
Messaggi: 530
|
#define se if
cosa ho vinto ? |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Nov 2004
Messaggi: 326
|
Comunque questo è C, non C++...
__________________
The problem with Troubleshooting is that often trouble shoots back... |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Visto che ci siamo....
Siccome questo programma stampa Hello world che e' bruttino, vogliamo stampare Codice:
*********** * Hello world * *********** Lo sai fare senza modificare il codice presente nella funzione main()? Se qualcuno ha qualche indovinello di questo genere, magari tiriamo alla fine della giornata (visto che e' venerdi)
__________________
In God we trust; all others bring data |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Nov 2008
Messaggi: 530
|
Quote:
|
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Wow, funziona!!
Mi faceva paura quella #define printf, al punto che sono andato a provarla. Io avevo in mente un'altra soluzione, e non avevo minimamente pensato ad una cosa cosi'.... complimenti! Un altro indovinello?
__________________
In God we trust; all others bring data |
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Nov 2008
Messaggi: 530
|
Quote:
mi dici la tua soluzione ... SONO CURIOSO ok altro indovinello. ... ASPETTO Ultima modifica di Alex_87_xelA : 05-12-2008 alle 14:05. |
|
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
La mia soluzione era piu' "classica": dichiaro un oggetto globale, nel costruttore e nel distruttore ci metto le mie stringhe
Codice:
class MyObject
{
MyObject ()
{
printf ("**********\n*");
}
~MyObject ()
{
printf ("*\n"*********\n");
}
};
MyObject obj;
main ()
{
se (1 == 1)
printf ("Hello World");
}
DOMANDA: il seguente codice: Codice:
int main ()
{
3;
}
(PS senza usare il compilatore, ovviamente)
__________________
In God we trust; all others bring data |
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Nov 2008
Messaggi: 530
|
Quote:
anche se quel 3; non serve a niente li non dovrebbe dare errore giusto ? ORA VADO E PROVO |
|
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Nov 2005
Città: Texas
Messaggi: 1722
|
Beh, io pensavo che anche qualcun altro potrebbe proporne, di indovinelli...
(altrimenti passo per quello che sa tutte le soluzioni e non e' un ruolo che mi si addice. Anzi!)
__________________
In God we trust; all others bring data |
|
|
|
|
|
#15 |
|
Bannato
Iscritto dal: Mar 2008
Città: Villabate(PA)
Messaggi: 2515
|
Più che un indovinello, propongo una piccola sfida, un mini contest:
Si scriva una funzione che, data una dichiarazione complessa, la traduca in italiano. Esempio: Se passo la stringa Codice:
char (*(*x())[])() Codice:
x è una funzione che restituisce un puntatore a vettore[] di puntatore a funzione che restituisce char |
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Nov 2008
Messaggi: 530
|
Quote:
(spero solo che non è un programma che già avevi fatto !!! seno mi freghi |
|
|
|
|
|
|
#17 |
|
Member
Iscritto dal: Feb 2006
Messaggi: 134
|
|
|
|
|
|
|
#18 |
|
Senior Member
Iscritto dal: Nov 2008
Messaggi: 530
|
GRAZIE ... ci vogliono veramente.
ho pensato gia ad alcuni casi come questo int ((*(*x)(int, double, char))[]); cioè si devono vedere anche gli argomenti !!! WOW ci perderò un bel po di tempo ... ma oggi no però vedro di CERCARE di farlo domani mattina ... ora devo studiare |
|
|
|
|
|
#19 | |
|
Senior Member
Iscritto dal: Nov 2008
Messaggi: 530
|
Quote:
è piu facile a progettare un compilatore comunque ci provo di sicuro a risolverlo |
|
|
|
|
|
|
#20 | |
|
Bannato
Iscritto dal: Mar 2008
Città: Villabate(PA)
Messaggi: 2515
|
Quote:
la soluzione si trova nel libro Il linguaggio C di Kernighan e Ritchie(pag. 121). Io ho creato, partendo da quella del libro, una versione ampliata con la gestione degli errori. Domani la posto. A parte tutto penso sia interessante: può capitare di dover modificare codice scritto da altri e imbattersi in dichiarazioni complesse, difficili da decifrare(soprattutto se mancano i commenti). |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 15:53.




















