joi, 22 octombrie 2015

C# lecția 3




·         Tipul string, read-only, caractere Unicode.
·         Console.Write și WriteLine cu format
WriteLine("sir",var1,var2,…, varn);
·         Conversia de la string la int si invers.
int i = 13;
string j = i.ToString();
string k=””+i;
string l=”15”;
int p=int.Parse(l);
·         La declararea unui tablou, se creează o instanţă a clasei .NET, System.Array. Declarare tablou unidimensional:
Tip[] nume;
Prin această declaraţie nu se alocă şi spaţiu pentru memorare. Pentru aceasta, tabloul
trebuie instanţiat: 
nume = new Tip[NumarElemente];
Se pot face în acelaşi timp operaţiile de declarare, instanţiere şi iniţializare:
Exemplu:
int[] v = new int[] {1,2,3);
sau
int[] v = {1,2,3);
Exemplul 41: Crearea, sortarea şi afişarea unui vector:
int[] v = new int[5] { 10, 2, 4, 8, 6 };
Array.Sort(v); //sortarea crescatoare a vectorului v
for (int i = 0; i < v.Length; i++) //afisarea vectorului v
Console.Write("{0,3}", v[i]);
Afişarea se poate face şi cu ajutorul lui foreach:
foreach (int i in v)
Console.Write("{0,3}",i);
Tip[] nume;
nume = new Tip[NumarElemente];
int[] v = new int[] {1,2,3);
int[] v = {1,2,3);
·         Foreach
enumeră elementele dintr-o colecţie, executând o instrucţiune pentru fiecare element.
string s="Curs"+" de"+" informatica";
foreach(char c in s)
Console.Write(c);

Ciurul lui Eratostene. Pentru un număr natural n dat se afişează toate numerele prime mai mici decât n. Selectarea numerelor prime se face folosind ciurul lui Eratostene.
Ciurul lui Eratostene presupune formarea unui şir din numerele 2, 3, 4, …, n-1, n. Pentru a
obţine acest şir „tăiem” mai întâi toţi multiplii lui 2, apoi ai lui 3 ş.a.m.d. În final rămân numai
numerele prime din intervalul [2,n]. Noţiunea de „tăiere” a unui element va însemna, în acest caz, atribuirea valorii zero pentru acel element.

/* Ciurul lui Eratostene - calculeaza numerele prime mai mici decat un intreg n
*/
using System;
namespace Exemplul_44
{
    class Program
    {
        static void Main()
        {
            int n, i, j;
            int[] c;
            Console.Write("n=");
            n = int.Parse(Console.ReadLine());
            c = new int[n + 1];
            for (i = 2; i <= n; i++)
                c[i] = i;
            i = 2;
            while (i <= n / 2)//cel mai mare divizor propriu al unui numar este <= jumatatea sa
        {
                if (c[i] != 0)
                {
                    j = 2 * i;
                    while (j <= n)
                    {
                        if (c[j] != 0) c[j] = 0;
                        j += i;
                    }
                }
                i++;
            }
            for (i = 2; i <= n; i++)
                if (c[i] != 0)
                    Console.Write(c[i] + " ");
            Console.WriteLine();
            Console.ReadKey();
        }
    }
}

Niciun comentariu:

Trimiteți un comentariu