Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateC
C sharpCalculatoareCorel drawDot netExcelFox pro
FrontpageHardwareHtmlInternetJavaLinux
MatlabMs dosPascalPhpPower pointRetele calculatoare
SqlTutorialsWebdesignWindowsWordXml

PROIECT PENTRU OBTINEREA ATESTARII PROFESIONALE IN INFORMATICA - TITLUL LUCRARII: JOC HANGMAN

calculatoare



+ Font mai mare | - Font mai mic



Drobeta Turnu Severin

Liceul PEDAGOGIC "STEFAN ODOBLEJA"



PROIECT PENTRU OBTINEREA ATESTARII PROFESIONALE IN INFORMATICA

TITLUL LUCRARII:

JOC

HANGMAN

Cuprins

1.Introducere

2.Generalitati ale limbajului de programare C#

3.Caracterizara programului "Hangman "

4.Programul "Hangman "

5.Bibliografie

1.Introducere

Lucrarea de proiect "Joc-Hangman" isi propune aplicarea limbajului de programare C# astfel incat sa poata dezvolta inteligenta copiilor, determinarea si spiritual de joc, dat fiind cunoscutfaptul ca jocul iti dezvolta bagajul de cuvinte.

"Hangman" presupune ghicirea unui cuvant in maximum sapte incercari. Cuvantul ce trebuie ghicit este reprezentat de un sir de linii, fiecare linie reprezentand o litera a cuvantului.

Daca jucatorul care ghiceste sugereaza o litera ce se afla in cuvant, calculatorul o completeaza in toate pozitiile unde aceasta apare. Daca litera nu se afla in cuvant, calculatorul deseneaza un element din diagrama "spanzuratoarea".

Jocul se incheie cand:

a)    jucatorul care ghiceste completeaza tot cuvantul, sau il ghiceste exact.

b)    calculatorul completeaza diagrama.

Generalitati ale limbajului de programare C#

C# este un limbaj de programare orientat-obiect conceput de Microsoft la sfarsitul anilor 90. A fost conceput ca un concurent pentru limbajul Java. Ca si acesta, C# este un derivat al limbajului de programare C++.

Limbajul C# fost dezvoltat de o echipa restransa de ingineri de la Microsoft, echipa din care s-a evidentiat Anders Hejlsberg (autorul limbajului Turbo Pascal si membru al echipei care a proiectat Borland Delphi).

C# este un limbaj simplu, cu circa 80 de cuvinte cheie, si 12 tipuri de date predefinite. El permite programarea structurata, modulara si orientata obiectual, conform perceptelor moderne ale programarii profesioniste. Principiile de baza ale programarii pe obiecte (INCAPSULARE, MOSTENIRE, POLIMORFISM) sunt elemente fundamentale ale programarii C#.

In mare, limbajul mosteneste sintaxa si principiile de programare din C++. Sunt o serie de tipuri noi de date sau functiuni diferite ale datelor din C++, iar in spiritul realizarii unor secvente de cod sigure (safe), unele functiuni au fost adaugate (de exemplu, interfete si delegari), diversificate (tipul struct), modificate (tipul string) sau chiar eliminate (mostenirea multipla si pointerii catre functii).

Unele functiuni (cum ar fi accesul direct la memorie folosind pointeri) au fost pastrate, dar secventele de cod corespunzatoare se considera "nesigure".

Ca si limbajul C++ cu care se inrudeste, limbajul C# are un alfabet format din litere mari si mici ale alfabetului englez, cifre si alte semne. Vocabularul limbajului este format din acele "simboluri" cu semnificatii lexicale in scrierea programelor: cuvinte (nume), expresii, separatori, delimitatori si comentarii.

In C# exista doua categorii de tipuri de date:

a)    tipuri valoare

tipul simple: byte,char, int, float,etc.

tipul enumerare -enum

tipul structura - struct

b)    tipuri referinta

tipul clasa - class

tipul interfata - interface

tipul delegat - delegate

tipul tablou - array

Toate tipurile de date sunt derivate din tipul System.Object

Toate tipurile valoare sunt derivate din clasa System.ValueType, derivata la randul ei din clasa Object (alias pentru System.Object). Limbajul C# contine un set de tipuri predefinite(int, bool etc.) si permite definirea unor tipuri proprii (enum, struct, class etc.).

Siruri de caractere se definesc doua tipuri de siruri:

.regulate

.de tip "verbatim"

Tipul regulat contine intre ghilimele zero sau mai multe caractere, inclusiv secvente escape. Secventele escape permit reprezentarea caracterelor care nu au reprezentare grafica precum si reprezentarea unor caractere speciale: backslash, caracterul apostrof, etc.

Instructiuni utilizabile in C#

Instructiunea if

Instructiunea if executa o instructiune ın functie de valoarea de adevar a unei expresii logice.

Are formele:

if(expresielogica)instructiune;

if(expresielogica)instructiune;elseinstructiune;

Instructiunea switch

Permite executarea unei instructiuni in functie de valoarea unei expresii, care se poate regasi sau nu intr-o lista de valori candidat:

switch(expresie)

Instructiunea while

Permite executarea unei instructiuni atata timp cat valoarea unei expresii logice este adevarata (ciclucutestanterior).

Sintaxa:

while(expresielogica)instructiune;

Instructiunea do

Executa o instructiune o data sau de mai multe ori, cat timp o conditie logica este adevarata (ciclu cu test posterior).

Exemplu:

do

while(i<=n)

Instructiunea for

Executa o secventa de initializare, dupa care va executa o instructiune atata timp cat o conditie este adevarata (ciclu cu test anterior); poate sa contina un pas de reinitializare (trecerea la pasul urmator).

Exemplu:

for(inti=0;i<n;i++)

',i);

Instructiunea foreach

Enumera elementele dintr-o coletie, executand o instructiune pentru fiecare element .

Colectia poate sa fie orice instanta a unei clase care implementeaza interfata System.Collections.IEnumerable.

Exemplu:

int[ ]t=;

foreach(intxint)

Caracterizara programului "Hangman "

Jocul se deschide cu o fereastra in care jucatorul va trebui sa ghicesca cuvantul reprezentat de un sir de linii fiecare linie reprezentand o litera a cuvantului.

Jucatorul trebuie sa apese pe un buton ce reprezinta o cifra a alfabetului daca considera ca aceea cifra se afla in cuvantul dat .

Daca cifra se afla in cuvat , calculatorul o completeaza in toate pozitiile unde aceasta apare.

Daca nu apare calculatorul deseneaza un element din diagrama "spanzuratoarei".

Jocul se termina atunci cand jucatorul care ghiceste completeaza tot cuvantul, sau il ghiceste exact.

Sau atunci cand calculatorul completeaza diagrama "spanzuratoarei"

4.Programul "Hangman "

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Drawing.Drawing2D;

namespace HangMan

Label[] labels = new Label[100];

char[] guess = new char[100];

string hiddenWord;

char[] guessed;

private Pen myPen;

Graphics xGraph;

int i = 0;

int trials = 0;

private int RandomNumber(int min, int max)

public Form1()

private void Form1_Load(object sender, EventArgs e)

guessed[0] = hiddenWord[0];

guessed[hiddenWord.Length - 1] = hiddenWord[hiddenWord.Length - 1];

labels[0].Text = guessed[0].ToString();

labels[hiddenWord.Length - 1].Text = guessed[hiddenWord.Length - 1].ToString();

}

private void Form1_Paint(object sender, PaintEventArgs e)

private bool ValidateLetter(char p)

return ok;

}

private void A_Click(object sender, EventArgs e)

}

}

else

A.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Felicitari! Ai castigat!');

}

private void drawNext(int trials)

private bool matches()

j++;

}

return ok;

}

private int endGame(int t)

}

}

else if (!matches())

ok = 0;

if (matches())

}

}

return ok;

}

private void B_Click(object sender, EventArgs e)

}

}

else

B.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void C_Click(object sender, EventArgs e)

}

}

else

C.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void D_Click(object sender, EventArgs e)

}

}

else

D.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void E_Click(object sender, EventArgs e)

}

}

else

E.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void F_Click(object sender, EventArgs e)

}

}

else

F.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void G_Click(object sender, EventArgs e)

}

}

else

G.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void H_Click(object sender, EventArgs e)

}

}

else

H.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void II_Click(object sender, EventArgs e)

}

}

else

II.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void J_Click(object sender, EventArgs e)

}

}

else

J.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void K_Click(object sender, EventArgs e)

}

}

else

K.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void L_Click(object sender, EventArgs e)

}

}

else

L.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void M_Click(object sender, EventArgs e)

}

}

else

M.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void N_Click(object sender, EventArgs e)

}

}

else

N.Enabled = false;

}

private void O_Click(object sender, EventArgs e)

}

}

else

O.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void P_Click(object sender, EventArgs e)

}

}

else

P.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void Q_Click(object sender, EventArgs e)

}

}

else

Q.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void R_Click(object sender, EventArgs e)

}

}

else

R.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void S_Click(object sender, EventArgs e)

}

}

else

S.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void T_Click(object sender, EventArgs e)

}

}

else

T.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void U_Click(object sender, EventArgs e)

}

}

else

U.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void V_Click(object sender, EventArgs e)

}

}

else

V.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void W_Click(object sender, EventArgs e)

}

}

else

W.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void X_Click(object sender, EventArgs e)

}

}

else

X.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void Y_Click(object sender, EventArgs e)

}

}

else

Y.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

private void Z_Click(object sender, EventArgs e)

}

}

else

Z.Enabled = false;

if (endGame(trials) == -1)

else if (endGame(trials) == 1)

MessageBox.Show('Ai castigat!');

}

}

5.Bibliografie

https://www.scribd.com/doc/517796/Manual-C

https://www.scribd.com/doc/17995127/Curs-C-romana



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 2114
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved