Vai al contenuto


Toggle Chat RM - Chat Apri la Chat in un popup

E' severamente vietato richiedere supporto su RPG Maker in chat!
@  Caba33akaMimik : (25 May 2012 - 09:56 PM) sera a tutti ^^
@  Melosx : (25 May 2012 - 08:30 PM) Buonasera a tutti
@  Hashmin : (25 May 2012 - 02:15 PM) ciao a tt!
@  Pech93 : (24 May 2012 - 01:55 PM) ho aggiunto delle composizioni originali!!! Chi le vuole ascoltare e dare qualche commento costruttivo?
@  MihaChan : (23 May 2012 - 09:19 PM) a parte i denti -che stanno decidendo di darmi noia in questi giorni-, tutto okay~
@  Melosx : (23 May 2012 - 09:18 PM) bene ^.^ ... Tu??
@  MihaChan : (23 May 2012 - 09:17 PM) come va? xD
@  MihaChan : (23 May 2012 - 09:16 PM) okay
@  MihaChan : (23 May 2012 - 09:16 PM) ah
@  Melosx : (23 May 2012 - 09:14 PM) ciao miha... ai dont spic inglisc
@  MihaChan : (23 May 2012 - 09:12 PM) how'sa goin'?
@  MihaChan : (23 May 2012 - 09:12 PM) ciao Mel!
@  Melosx : (23 May 2012 - 09:07 PM) ciao
@  MihaChan : (23 May 2012 - 09:06 PM) salve D:
@  Pech93 : (23 May 2012 - 08:05 PM) MIk?
@  Melosx : (23 May 2012 - 07:51 PM) VIENI SU MSN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@  Melosx : (23 May 2012 - 07:51 PM) MIIIIIIIIIIIIIIIIIIIKKKKKKKKKKKK!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@  Melosx : (23 May 2012 - 07:46 PM) *iù
@  Melosx : (23 May 2012 - 07:38 PM) iu spin mi rai rau bebi rai rau laic a record bebi rau rau rau rau
@  Melosx : (23 May 2012 - 07:37 PM) lalalallalallalallallllllllllalalalallaaaaaaaaaaaaaaaaaaaaaa!!!!!!!!!!!!!!!!!!

[002]Variabili-Pt.2-Es.


  • Per cortesia connettiti per rispondere
20 risposte a questa discussione

#1 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 20 August 2010 - 11:17 PM

Postate qui i compiti svolti (:

Riporto i compiti che ho assegnato:


1)
-Richiesta di due dati input(tipo int);
-Operare con i due dati ricevuti nel seguente modo :
Addizione + Sottrazione + Output del risultato;
Moltiplicazione + Divisione + Output del risultato;
Infine rimostrare i due risultati attraverso una tabulazione orrizzontale;

2)
Creare un'applicazione che trovi l'area e il perimetro di un triangolo.
(l'area di un triangolo è basexaltezza/ 2 );
(in questo esercizio usate il tipo float).


3)
Creare un'applicazione che chieda:
-Nome e cognome;
-Età;
-Città di nascita;
-Scuola;
-Lavoro;
Per poi mostrare il tutto in output.
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#2 OFFLINE   herupty

herupty

    Apprendista Maker

  • Utenti RM
  • 640 Messaggi:
  • LocalitàMilano
  • Tool:
    S.E.R.P.E. ;P

Inviato 21 August 2010 - 09:57 AM

Spoiler

però non mi visualizza i valori delle var
Name, Age, City, School e Work
why?
lool
Spoiler

#3 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 21 August 2010 - 11:56 AM

Ehm,per i primi due esercizi avevo chiesto che l'applicazione richiedesse due dati inputa da tastiera >.<(come hai fatto nel terzo).


Comunque,per quanto riguarda il terzo esercizio è tutto giusto tranne per due cose:

-Puoi evitare di mettere fra parentesi (Console.ReadLine());,è un'errore di sintassi,diciamo,perchè non c'è nessuna operazione in corso.Sarebbe servito se avessi scritto una cosa del genere:

string name = (Console.ReadLine()) + " hey";

Questo avrebbe dato come output(facendo finta che do come dato input Tako) :

Tako hey.

Ma,neanche in questo caso serve la parentesi.

Un'altro errore è quando vuoi scrivere una nuova linea.
Va bene usare WriteLine,ma non dev'essere seguito da ReadLine in questo caso.Perchè come sappiamo,quel metodo attende la pressione di un tasto da parte dell'utente e così l'applicazione non avviene immediata.

Ora veniamo al problema che hai incontrato.
É molto semplice.In pratica prima di mettere l'applicazione nell'attesa di un dato input,tu hai messo il metodo ReadLine().Facendo ciò,non ti sei accorto che prima di inserire il dato,devi premere un qualsiasi tasto per avanzare e dopo di che assegnare alla variabile un determinato valore.

Quindi se avessi scritto:

string Name = Console.ReadLine();
Console.ReadLine();

Avremmo avuto :

Tako
_

Così il dato Tako viene memorizzato nella stringa Name.


Un'altro errore,non grave è la tua naming convention.Parlo soprattuto a come hai chiamato i lati.
Sarebbe stato meglio chiamare i tre lati: base,altezza e cateto,perchè così chi legge il codice comprende subito qual è l'altezza ecc e non si crea confusione.

In più nel metodo WriteLine non serve usare ToString(esso non fa altro che convertire un qualsiasi valore in una stringa),il quale è di proprietà contenuto in WriteLine.

Spero di esser stato esauriente (;

La prossima volta gli esercizi mettili in tre progetti diversi^^
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#4 OFFLINE   herupty

herupty

    Apprendista Maker

  • Utenti RM
  • 640 Messaggi:
  • LocalitàMilano
  • Tool:
    S.E.R.P.E. ;P

Inviato 21 August 2010 - 11:58 AM

ook
adesso provvedo a risolvere e rifare ;)
lool
Spoiler

#5 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 21 August 2010 - 12:13 PM

Ok (:
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#6 OFFLINE   herupty

herupty

    Apprendista Maker

  • Utenti RM
  • 640 Messaggi:
  • LocalitàMilano
  • Tool:
    S.E.R.P.E. ;P

Inviato 21 August 2010 - 12:32 PM

Esercizio1
Spoiler


Esercizio2
Spoiler


Esercizio3
Spoiler

ora funge tutto ^^
lool
Spoiler

#7 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 21 August 2010 - 01:03 PM

Tutto giusto tranne che nel primo esercizio alla fine hai messo il metodo WriteLine,invece di ReadLine.Così l'applicazione dura una frazione di secondo.

In più noto che continui ad usare il metodo ToString in WriteLine,ma fa niente metterlo oppure ometterlo è la stessa cosa^^
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#8 OFFLINE   herupty

herupty

    Apprendista Maker

  • Utenti RM
  • 640 Messaggi:
  • LocalitàMilano
  • Tool:
    S.E.R.P.E. ;P

Inviato 21 August 2010 - 01:26 PM

vabbè io lo metto lo stesso perchè per ora ci capisco di + ^^
lool
Spoiler

#9 OFFLINE   Kuraudo Sutoraifu

Kuraudo Sutoraifu

    RM Avanzato

  • Utenti RM
  • StellettaStellettaStelletta
  • 44 Messaggi:
  • LocalitàFossacesia (CH)
  • Tool:
    RpgMaker XP

Inviato 03 September 2010 - 08:53 AM

Il 1° ed il 3° esercizio li ho postati nell'altra discussione, qui riporto solo il secondo. Non ho avuto voglia di fare tutti i tipi di triangolo quindi ho fatto solo isoscele, equilatero e scaleno xD

Codice esercizio 2 (molto molto personale xD):using System;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("CALCOLO PERIMETRO ED AREA DEL TRIANGOLO: 1=Isoscele 2=Scaleno 3=Equilatero");
            Console.WriteLine();
            Restart:
                Console.WriteLine("Per favore, scegli il triangolo (1,2 o 3): ");
            String s = Console.ReadLine();
            int sel2 = int.Parse(s);
            
            switch (sel2)
            {
                case 1:
                    {
                        Console.WriteLine("Hai scelto di calcolare perimetro ed area del triangolo isoscele.");
                        Console.WriteLine();
                        Console.WriteLine("Inserisci la misura dei lati obliqui: ");
                        String mis = Console.ReadLine();
                        //Lati obliqui
                        int oblq = int.Parse(mis);
                        Console.WriteLine();
                        Console.WriteLine("Inserisci la misura della base: ");
                        String mis2 = Console.ReadLine();
                        //Base
                        int b = int.Parse(mis2);
                        //Calcolo altezza tramite Pitagora
                        double altezza = Math.Sqrt((oblq * oblq) - (b / 2) * (b / 2));
                        //Calcolo area
                        double area = (b*altezza)/2;
                        //Calcolo perimetro
                        double perimetro = b + oblq*2;
                        Console.WriteLine();
                        Console.WriteLine("Area: " + area + "\n" + "Perimetro: " + perimetro);
                        break;
                    }
                case 2:
                    {
                        Console.WriteLine("Hai scelto di calcolare perimetro ed area del triangolo scaleno.");
                        Console.WriteLine();
                        Console.WriteLine("Inserisci la misura del 1° lato: ");
                        String primo = Console.ReadLine();
                        Console.WriteLine("Inserisci la misura del 2° lato: ");
                        String secondo = Console.ReadLine();
                        Console.WriteLine("Inserisci la misura del 3° lato: ");
                        String terzo = Console.ReadLine();
                        int one = int.Parse(primo);
                        int two = int.Parse(secondo);
                        int tree = int.Parse(terzo);
                        //Calcolo semiperimetro
                        double semip = (one + two + tree) / 2;
                        //Calcolo area tramite formula di Erone
                        double area = Math.Sqrt(semip * (semip - one) * (semip - two) * (semip - tree));
                        //Calcolo perimetro
                        double perimetro = one + two + tree;
                        Console.WriteLine("Area: " + area + "\n" + "Perimetro: " + perimetro);
                        break;
                    }
                case 3:
                    {
                        Console.WriteLine("Hai scelto di calcolare perimetro ed area del triangono equilatero.");
                        Console.WriteLine();
                        Console.WriteLine("Scrivi la misura di un lato (i lati di un triangolo equilatero sono tutti uguali): ");
                        String mis = Console.ReadLine();
                        int lato = int.Parse(mis);
                        //Calcolo altezza
                        double altezza = (lato * (Math.Sqrt(3))) / 2;
                        //Calcolo area
                        double area = (lato * altezza) / 2;
                        //Calcolo perimetro
                        double perimetro = lato * 3;
                        Console.WriteLine("Area: " + area + "\n" + "Perimetro: " + perimetro);
                        break;
                    }
                default:
                    {
                        goto Riscegli2;
                    }
            }
            Riscegli2:
            Console.WriteLine();
            Console.WriteLine("Vuoi riscegliere il triangolo? Scrivi Si o No: ");
            String ver2 = Console.ReadLine();
            if (ver2.Equals("Si"))
            {
                goto Restart;
            }
            else if (ver2.Equals("No"))
            {
                goto End;
            }
            else
            {
                Console.WriteLine();
                Console.WriteLine("Devi scrivere Si o No");
                goto Riscegli2;
            }
            End:
                return;
        }
    }
}


#10 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 03 September 2010 - 12:36 PM

Oddio che casino XD

Allora,innanzitutto complimenti perchè hai saputo usare l'istruzione switch (:

Di errori non ne vedo se non fosse per alcuni dubbi che mi hai fatto sorgere:

-Non capisco perchè prendi le misure dei lati input come string e poi li converti in int.É giusto ma si può fare a meno.

-Ti sconsiglio di usare il Goto,perchè rallenta il processore e va a formare un codice incomprensibile.Ma in questo caso,essendo una piccola applicazione,può andare.



-il metodo CompareTo è usato per l'ordine alfabetico,in questo caso l'hai usato per altro.Avresti potuto usare il metodo Equals (:.

-Ho notato un piccolo bug (: .Se all'inizio dell'applicazione come input gli dai un numero che non sia uno dei tre richiesti,va all'etichetta default(di regola XD) e se non scrivi esattamente la risposta,viene rimostrata la domanda in loop.

La soluzione è semplice.In pratica in C# non può avvenire il passaggio implicito da un etichetta ad un'altra(mentre in C++ si).
Quindi per come l'hai strutturato tu è errato.Per risolverlo basta fare un bel goto alla label "Riscegli2" e tutto si risolve. (;

Spero di essere stato esauriente^^
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#11 OFFLINE   Kuraudo Sutoraifu

Kuraudo Sutoraifu

    RM Avanzato

  • Utenti RM
  • StellettaStellettaStelletta
  • 44 Messaggi:
  • LocalitàFossacesia (CH)
  • Tool:
    RpgMaker XP

Inviato 03 September 2010 - 12:55 PM

Si hai perfettamente ragione su tutto. Comunque vengo dal Java dove sono molto più esperto ed è simile al C#. Per quanto riguarda il goto volevo solo provarlo,mai usato in vita mia! Per l'equals hai ragionissima e non riesco a capacitarmi del fatto che non l'ho usato @_@. Il bug se ho voglia poi lo aggiusto xD, comunque tutto chiaro, grazie :)

#12 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 03 September 2010 - 01:03 PM

Notavo che hai una conoscenza abbastanza buona.Si il C# prende un po' dal java,c++ e delphi^^

Comunque sono errori comuni all'inizio,con l'esperienza vedrai che non li farai più^^

Comunque ho già detto ocme risolvere il bug XD,una cavolata per qualcuno che conosce le eccezioni.Io leggo sempre la libreria online msdn^^
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#13 OFFLINE   Kuraudo Sutoraifu

Kuraudo Sutoraifu

    RM Avanzato

  • Utenti RM
  • StellettaStellettaStelletta
  • 44 Messaggi:
  • LocalitàFossacesia (CH)
  • Tool:
    RpgMaker XP

Inviato 03 September 2010 - 01:27 PM

Si conosco le eccezioni in Java. In C# non so se funzionano uguale. Comunque credo di non aver afferrato perfettamente come risolvere quel bug. Per ora ho tolto il compareTo ed ho messo l'equals.

Te dici di mettere un controllo alla selezione del triangolo all'inizio, se l'utente non mette 1, 2 o 3 devo fare un goto a Riscegli2, qualcosa del genere?

#14 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 03 September 2010 - 02:04 PM

Devi fare una semplice modifica

da così

default:
                    {
                        Console.WriteLine();
                        Console.WriteLine("Devi scegliere 1, 2 o 3");
                        Console.WriteLine();
                        Console.WriteLine("Vuoi riscegliere il triangolo? Scrivi Si o No: ");
                        String ver = Console.ReadLine();
                    Riscegli:
                        if (ver.CompareTo("Si") == 0)
                        {
                            goto Restart;
                        }
                        else if (ver.CompareTo("No") == 0)
                        {
                            goto End;
                        }
                        else
                        {
                            Console.WriteLine();
                            Console.WriteLine("Devi scrivere Si o No");
                            goto Riscegli;
                        }
                    }

a :

default:

goto Riscegli2;

Tutto qui^^
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#15 OFFLINE   Kuraudo Sutoraifu

Kuraudo Sutoraifu

    RM Avanzato

  • Utenti RM
  • StellettaStellettaStelletta
  • 44 Messaggi:
  • LocalitàFossacesia (CH)
  • Tool:
    RpgMaker XP

Inviato 03 September 2010 - 02:29 PM

Che cosa banale, mi sento un cretino xD

#16 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 03 September 2010 - 02:33 PM

Kuraudo Sutoraifu, dice:

Che cosa banale, mi sento un cretino xD

Ma no XD è normale,non sapevi questa eccezione dell'istruzione switch e dopo tutto questa è una scuola online,serve per imparare no? :3


Fra poco nuova lezione O:
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#17 OFFLINE   Kuraudo Sutoraifu

Kuraudo Sutoraifu

    RM Avanzato

  • Utenti RM
  • StellettaStellettaStelletta
  • 44 Messaggi:
  • LocalitàFossacesia (CH)
  • Tool:
    RpgMaker XP

Inviato 03 September 2010 - 02:36 PM

Evvai :3d: Le lezioni di Xna sono effettivamente previste? xD

Aggiorno il programma

#18 OFFLINE   Takobon

Takobon

    Recensori

  • Recensori
  • 415 Messaggi:
  • Tool:
    VS+C#+Xna(Con i quali nascerà Inferdaen)

Inviato 03 September 2010 - 02:41 PM

Kuraudo Sutoraifu, dice:

Evvai :3d: Le lezioni di Xna sono effettivamente previste? xD

Sisi,ma prima finisco quelle sul C#

Ho già un progetto tutto in mente XD

P.S.Ho iniziato a studiare il 3D :P
http://nexuseden.tumblr.com/Immagine inseritaSono così annoiato da offrirmi come eventer per qualsiasi progetto (:NightEngine
Spoiler

#19 OFFLINE   Kuraudo Sutoraifu

Kuraudo Sutoraifu

    RM Avanzato

  • Utenti RM
  • StellettaStellettaStelletta
  • 44 Messaggi:
  • LocalitàFossacesia (CH)
  • Tool:
    RpgMaker XP

Inviato 03 September 2010 - 03:24 PM

Cosa hai iniziato a studiare di preciso per il 3D?

#20 OFFLINE   Ally

Ally

    Fondatori

  • Amministratori
  • 5558 Messaggi:
  • Localitàrpgmkr
  • Ruolo:
    Scripter
  • Progetto VX:
    Essence
  • Tool:
    RM2k/2k3

Inviato 03 September 2010 - 03:32 PM

Non andate off-topic,mp ;)
Immagine inserita
Spoiler




1 utente(i) stanno leggendo questa discussione

0 utenti, 1 ospiti, 0 utenti anonimi