Sunteți pe pagina 1din 8

using System.Runtime.

InteropServices;

internal class Program


{
struct punct
{
public int x;
public int y;
}
static punct aduna_puncte(punct a, punct b)
{
punct c;
c.x = a.x + b.x;
c.y = a.y + b.y;
return c;
}

private static void Main(string[] args)


{
punct a;
a.x = 2;
a.y = 3;

punct b;
b.x = 4;
b.y = 5;

punct c;
c = aduna_puncte(a, b);

Console.WriteLine($"Coordonatele punctului c sunt: {c.x},{c.y}");


}
}

/* Să se realizeze o structură prin care se pot crea trei variabile


* care să rezolve soluţia pentru c.x=a.x+b.x; c.y=a.y+b.y; */
using System.Runtime.InteropServices;

internal class Program


{
struct Complex
{
public double preal;
public double pimaginar;

public Complex(double real, double imaginar)


{
preal = real;
pimaginar = imaginar;
}
public double Modul()
{
return Math.Sqrt(preal * preal + pimaginar * pimaginar);
}
}

private static void Main(string[] args)


{
Complex nrComplex = new Complex(4, 5);

Console.WriteLine($"Partea reala: {nrComplex.preal}");


Console.WriteLine($"Partea imaginara: {nrComplex.pimaginara}");

Console.WriteLine($"Modulul: {nrComplex.Modul}");
}
}

/* Să se realizeze o structură de tip complex, conţinând câmpuri pentru partea imaginară şi partea reală.

using System.Runtime.InteropServices;

internal class Program


{
struct fractie
{
public int numarator;
public int numitor;

public fractie(int num, int numi)


{
numarator = num;
numitor = numi;
}

public fractie adunare(fractie fractie1, fractie fractie2)


{
int numaratorSuma = fractie1.numarator * fractie2.numitor + fractie1.numitor * fractie2.numarator;
int numitorSuma = fractie1.numitor * fractie2.numitor;
}
}

private static void Main(string[] args)


{
Console.Write("primul numarator: ");
int numarator1 = int.Parse(Console.ReadLine());

Console.Write("primul numitor: ");


int numitor1 = int.Parse(Console.ReadLine());

Console.Write("al doilea numarator: ");


int numarator2 = int.Parse(Console.ReadLine());

Console.Write("al doilea numitor: ");


int numitor2 = int.Parse(Console.ReadLine());

//crearea a doua obiecte de tip fractie folosind valorile introduse de la tastatura


fractie fractie1 = new fractie(numarator1, numitor1);
fractie fractie2 = new fractie(numarator2, numitor2);

fractie suma = fractie.adunare(fractie1, fractie2);


}
}

/* Să se realizeze o structură de tip fracţie.


* Să se citească de la tastatură şi să se adune două fracţii.

using System.Runtime.InteropServices;

internal class Program


{
struct elev
{
public string nume;
public int varsta;

public elev(string Nume, int Varsta)


{
nume = Nume;
varsta = Varsta;
}
}

private static void Main(string[] args)


{
elev[] elevi = new elev[10];

Console.WriteLine("numele si prenumele primului elev: ");


string nume = Console.ReadLine();

Console.WriteLine("varsta primului elev: ");


int varsta = int.Parse(Console.ReadLine());

//initializarea primului element din vectorul elevi


elevi[0] = new elev(nume, varsta);

Console.WriteLine("valorile din primul element: ");


Console.WriteLine($"numele primului elev: {elevi[0].nume}");
Console.WriteLine($"varsta primului elev: {elevi[0].varsta}");
}
}

/* Să se declare un vector v de 10 elemente de tip elev


* şi să se citească şi să afişeze valorile din primul element.*/

using System.Runtime.InteropServices;

internal class Program


{
struct elev
{
public string nume;
public int varsta;
public elev(string Nume, int Varsta)
{
nume = Nume;
varsta = Varsta;
}
}

private static void Main(string[] args)


{
elev[] elevi = new elev[10];

Console.WriteLine("numele si prenumele primului elev: ");


string nume1 = Console.ReadLine();

Console.WriteLine("varsta primului elev: ");


int varsta1 = int.Parse(Console.ReadLine());

//initializarea primului element din vectorul elevi


elevi[0] = new elev(nume1, varsta1);

Console.WriteLine("numele si prenumele elevului al doilea: ");


string nume2 = Console.ReadLine();

Console.WriteLine("varsta elevului al doilea: ");


int varsta2 = int.Parse(Console.ReadLine());

//initializarea elementului al doilea din vectorul elevi


elevi[1] = new elev(nume2, varsta2);

Console.WriteLine("valorile din primul element: ");


Console.WriteLine($"numele primului elev: {elevi[0].nume}");
Console.WriteLine($"varsta primului elev: {elevi[0].varsta}");

Console.WriteLine($"primul caracter din numele celui de al doilea elev: {elevi[1].nume[0]}");


}
}

/* Să se declare un vector v de 10 elemente de tip elev


* şi să se citească şi să afişeze valorile din primul element.
Să se afişeze primul caracter din numele celui de al doilea elev.*/

using System.Runtime.InteropServices;

internal class Program


{
struct elev
{
public string nume;
public int varsta;

public elev(string Nume, int Varsta)


{
nume = Nume;
varsta = Varsta;
}
}

private static void Main(string[] args)


{
elev[] elevi = new elev[10];
for(int i=1; i<=10; i++)
{
Console.Write($"introduceti numele si prenumele elevului {i}: ");
string nume = Console.ReadLine();

Console.Write($"introduceti varsta elevului {i}: ");


int varsta = int.Parse(Console.ReadLine());

elevi[i] = new elev(nume, varsta);


}
Console.WriteLine("primul caracter al fiecarui elev din vectorul elevi: ");
for(int i=1; i<=10; i++)
{
Console.WriteLine($"Elevul {i}: {elevi[i].nume[0]}");
}
}
}

/* Să se declare un vector v de 10 elemente de tip elev


* şi să se afişeze primul caracter al fiecărui nume din vectorul de elevi.*/

using System;
using System.ComponentModel.DataAnnotations;

internal class Program


{
struct data
{
public int zi;
public int luna;
public int an;
}
struct elev
{
public data datan;
public string nume;

public elev(int Datan, string Nume)


{
datan = Datan;
nume = Nume;
}
}

private static void Main(string[] args)


{
Console.WriteLine("numarul de elevi: ");
int n = int.Parse(Console.ReadLine());
elev[] Elev = new elev[n];

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


{
Console.Write($"Elevul {i+1}");
Console.Write("nume: ");
Elev[i].nume = int.Parse(Console.ReadLine());

Console.Write("zi: ");
Elev[i].datan.zi = int.Parse(Console.ReadLine());

Console.Write("luna: ");
Elev[i].datan.luna = int.Parse(Console.ReadLine());
Console.Write("an: ");
Elev[i].datan.an = int.Parse(Console.ReadLine());

...
}

}
}
/*Se citesc datele despre elevii unei clase, respectiv numele şi data naşterii.
* Să se ordoneze elevii în ordinea crescătoare după data naşterii
* şi să se afişeze această situaţie. */

using System;

public class Program


{
struct Elev
{
public string Nume;
public int Nota1, Nota2;
public float Medie;
}

static Elev[] a = new Elev[25];


static int n;

static void Citire()


{
for (int i = 0; i < n; i++)
{
Console.Write("numele: ");
a[i].Nume = Console.ReadLine();

Console.Write("nota1: ");
a[i].Nota1 = int.Parse(Console.ReadLine());

Console.Write("nota2: ");
a[i].Nota2 = int.Parse(Console.ReadLine());

a[i].Medie = ((float)(a[i].Nota1 + a[i].Nota2) / 2);


}
}

static void Afisare()


{
for (int i = 0; i < n; i++)
Console.WriteLine($"{a[i].Nume} {a[i].Nota1} {a[i].Nota2} {a[i].Medie}");
}

static void Ordonare()


{
bool g;
do
{
g = true;
for (int i = 0; i < n - 1; i++)
{
if (a[i + 1].Medie > a[i].Medie || (a[i + 1].Medie == a[i].Medie && string.Compare(a[i + 1].Nume, a[i].Nume) < 0))
{
var aux = a[i + 1];
a[i + 1] = a[i];
a[i] = aux;
g = false;
}
}
} while (!g);
}

public static void Main(string[] args)


{
Console.Write("n=");
n = int.Parse(Console.ReadLine());
Citire();
Afisare();
Ordonare();
Console.WriteLine("Elevii in ordinea descrescatoare a mediilor");
Afisare();
}
}
//Se dau n elevi. Pentru acestia se citesc: numele şi două note la matematica.
//Să se calculeze media fiecărui elev. Să se afişeze elevii în ordinea descrescătoare a mediilor,
//iar pentru medii egale, în ordine alfabetică

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