Sunteți pe pagina 1din 10

LICEUL TEOLOGIC PENTICOSTAL

BETEL

Atestat la informatică

SOLAR ENERGY

Profesor Îndrumător: Autor:


Prof. Hodut Adrian elev Mihele Teodora

2024
Oradea
CUPRINS

Introducere………………………................……... 3

Prezentarea aplicaţiei………………................….. 4

Utilizarea aplicaţiei……………………….............. 5

Cod sursă………………………………..............… 6

Bibliografie……………………………...............… 9

2
INTRODUCERE

Într-o lume în care preocupările legate de schimbările climatice și resursele


limitate de energie sunt din ce în ce mai prezente, energia solară reprezintă un pilon
esențial al tranziției către un viitor ecologic și eficient energetic.

Prin acest site, imi propun să vă port în fascinanta lume a energiei solare, să vă
ofer informații esențiale, să vă inspir și să vă ghidez în explorarea acestui domeniu în
continuă expansiune.

De la principiile de bază ale funcționării energiei solare la tehnologiile de


ultimă generație, de la beneficiile sale tangibile pentru mediu și economie la exemple
practice de implementare la nivel global, vom explora împreună toate aspectele legate
de această formă de energie regenerabilă.

Indiferent dacă sunteți un entuziast pasionat de tehnologie, un ecologist convins


sau un investitor interesat de oportunitățile pieței energetice, suntem aici pentru a vă
oferi cunoștințele și resursele necesare pentru a vă îmbogăți înțelegerea și aprecierea
acestui domeniu vital.

3
PREZENTAREA APLICAŢIEI

Aplicaţia este un popularul joc ”X & O” in format digital. Aceasta are 9


butoane ce sunt marchate alternativ cu X sau O printr-un simplu click. Totodata
dispune de un meniu generos ce ofera posibilitatea invatarii jocului, inceperea unui
joc nou, resetarea jocului sau parasirea aplicatiei.
Aceasta aplicatie prezinta in timp real scorul, atat victoriile cat si remizele.
Totodata la finalul fiecarui „meci” afiseaza castigatorul sau „ofticata” afiseaza
„Remiza”.
X și O (engleză tic-tac-toe) este un joc pentru doi jucători, "X" respectiv "0",
care marchează pe rând câte o căsuță dintr-un tabel cu 3 linii și 3 coloane. Jucătorul
care reușește primul să marcheze 3 căsute adiacente pe orizontală, verticală sau
diagonală caștigă jocul.
Jocul este accesibil de la cele mai fragede varste, iar arhitectura electronica
placut construita si competivitatea recomanda aceasta aplicatie!

4
UTILIZAREA APLICAŢIE

Meniul format din doua parti: „File” si „Ajutor”


„File” conţine „Joc nou” (incepi un joc nou) „Resetare scor” (scorul revine la 0-0-
0) şi „Exit” (se inchide jocul)
„Ajutor” conţine „cum sa joc”

5
La apasarea butonului ”cum sa joc?” apare urmatoarea casuţă cu specificaţiile necesare:

COD SURSĂ
Codul este insotit cu comentari pentru a usura intelegerea lui.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace tic_tac_toe
{
public partial class Form1 : Form
{
bool turn = true; // true = randul lui X
int turn_count = 0;

public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)


{

6
private void cumSaJocToolStripMenuItem_Click(object sender, EventArgs e)
{
MessageBox.Show("X și O (engleză tic-tac-toe) este un joc pentru doi jucători,
'X' respectiv '0', care marchează pe rând câte o căsuță dintr-un tabel cu 3 linii și 3
coloane. Jucătorul care reușește primul să marcheze 3 căsute adiacente pe orizontală,
verticală sau diagonală caștigă jocul.", "cum sa joc?");
}
// Am folosit Messagebox.Show pentru a afisa instructiunile la un simplu click

private void exitToolStripMenuItem_Click(object sender, EventArgs e)


{
Application.Exit();
}

private void button_click(object sender, EventArgs e)


{
Button b = (Button)sender;
if (turn)
b.Text = "X";
else
b.Text = "O";
turn = !turn;
b.Enabled = false; // pentru ca odata ocupata o pozitie, sa nu se suprascrie
turn_count++;
VerificaCastigatorul();
}

private void VerificaCastigatorul()


{
bool castigator = false;

// ORIZONTALA
if ((A1.Text == A2.Text) && (A2.Text == A3.Text)&& (!A1.Enabled))
castigator = true;
if ((B1.Text == B2.Text) && (B2.Text == B3.Text) && (!B1.Enabled))
castigator = true;
if ((B1.Text == B2.Text) && (B2.Text == B3.Text) && (!C1.Enabled))
castigator = true;

//trebuie sa verific daca prima e diferita de


celelalte prin folosirea sau nu a butonului

// VERTICALA
if ((A1.Text == B1.Text) && (B1.Text == C1.Text) && (!A1.Enabled))
castigator = true;
if ((A2.Text == B2.Text) && (B2.Text == C2.Text)&& (!A2.Enabled))
castigator = true;
if ((A3.Text == B3.Text) && (B3.Text == C3.Text) && (!A3.Enabled))
castigator = true;

//DIAGONALA
if ((A1.Text == B2.Text) && (B2.Text == C3.Text) && (!A1.Enabled))
castigator = true;
if ((A3.Text == B2.Text) && (B2.Text == C1.Text) && (!A3.Enabled))
castigator = true;

if (castigator) //afiseaza
{
disableButtons();

7
String winner = "";
if (turn)
{
winner = "O"; //afisarea castigatorului
ovictorii.Text = (Int32.Parse(ovictorii.Text) + 1).ToString();
// punctajul
}
else
{
winner = "X";
xvictorii.Text = (Int32.Parse(xvictorii.Text) + 1).ToString();
}
MessageBox.Show(winner + " a invins!", "Yay!");
}
else
{
if (turn_count == 9) //remiza
{
remize.Text = (Int32.Parse(remize.Text) + 1).ToString();
MessageBox.Show(" remiza :(", "off..");
}
}

} // final VerificaCastigatorul

private void disableButtons()


{

foreach (Control c in Controls)


{
try
{
Button b = (Button)c;
b.Enabled = false;
}
catch { }
}

} // anulam butoanele nefolosite dupa victorie, astefl nu mai putem completa pe


acelasi cod

private void jocNouToolStripMenuItem_Click(object sender, EventArgs e)


{
turn = true;
turn_count=0;

foreach (Control c in Controls)


{
try
{
Button b = (Button)c;
b.Enabled = true; //activez butoanele
b.Text = ""; // curat istoricul
}
catch { }

8
}

} //joc nou

private void button_enter(object sender, EventArgs e)


{
Button b = (Button)sender;
if (b.Enabled)
{
if (turn)
b.Text = "X";
else
b.Text = "O";
}
} //arata a cui e randul atunci can mousul e deasupra butonului

private void button_leave(object sender, EventArgs e)


{
Button b = (Button)sender;
if (b.Enabled)
{
b.Text = "";
}
} //curata butonul cand mouseul il paraseste, ca urmare a button_enter

private void resetareScorToolStripMenuItem_Click(object sender, EventArgs e)


{
ovictorii.Text = "0";
xvictorii.Text = "0";
remize.Text = "0";
} //resetare scor

}
}

9
BIBLIOGRAFIE

1. https://blogs.msdn.microsoft.com/visualstudio/2015/07/20/visual-studio-2015-and-
visual-studio-2013-update-5-released/
2. https://ro.wikipedia.org/wiki/Microsoft_Visual_Studio
3. https://www.youtube.com/watch?v=p3gYVcggQOU

10

S-ar putea să vă placă și