S-ar putea sa fi remarcat ca am inceput sa scriu cate ceva (as vrea sa numesc ceea ce scriu tutorial, insa pana ce voi reusi sa scriu macar 10-15 articole ma abtin sa folosesc aceasta titulatura) despre WPF. As vrea sa descriu aceasta tehnologie cu cat mai multe exemple, cu programele utile (sau semiutile). Insa am cam ramas in pana de idei. Am ceva idei, insa mi-ar prinde bine o mana de ajutor.
Eu cred ca o metoda eficienta de invatare este prin exemple si exercitii, as vrea sa pot oferi cat mai multe exemple si exercitii. Daca e ceva ce ai vrea sa vezi pus intr-o aplicatie, un program pe care l-ai scris si ai vrea sa il vezi transpus in WPF, o idee de aplicatie, de metoda, de clasa, de demo de orice e binevenit sa imi scrie. In plus, putina interactiune nu strica!
Ideile se trimit prin comentarii. Aceste comentarii nu vor fi publicate. Trimiterea unei idei nu presupune si folosirea ei. Voi selecta ideile pe care le voi considera utile scopului. Autorul comentariului (daca nu precizeaza/indica altfel) va primi credit pentru ideea propusa. Pentru eventualele nelamuriri ar trebui sa existe o adresa valida de email cu ajutorul careia sa putem comunica.
Asadar: ai o idee? Vrei sa ajuti? Acum poti! Spune-mi ce exemple te-ar interesa si ai sanse bune sa le vezi realizate.
ZetCoby says:
Am niste exerciti rezolvate in c# daca doresti pentru exemple, exerciti care am fost nevoit sa le fac la facultate, iti las o liste cu ce am facut ^^, si apropo imi place blogul tau, am invatat niste chesti foarte interesante aici
1. Interschimbaţi conţinutul a două numere de tip întreg citite de la tastatură.
2. Să se rezolve ecuaţia de gradul I de forma ax+b=0, cu coeficienţi numere reale.
3. Să se rezolve o ecuaţie de gradul II de forma ax2+bx+c=0, cu coeficienţi numere reale.
4. Scrieţi un program care primeşte la intrare un număr de secunde şi întoarce numărul maxim de ore, de minute, de secunde care este echivalent ca timp.
5. Scrieţi un program care simulează un calculator electronic pentru numere întregi: se introduc două numere întregi şi o operaţie care poate fi +, -, *, /, reprezentând adunarea, scăderea, înmulţirea şi câtul.
6. Înmultirea a două numere naturale prin adunări repetate.
7. Împărţirea a două numere prin scăderi repetate.
8. Să se ghicească un număr întreg din intervalul 1 – 100.
9. Să se calculeze n!=1*2*3*…*n (factorialul lui n), pentru un n natural citit de la tastatură.
10. Calculaţi suma cifrelor unui număr natural dat cu maximum 9 cifre.
11. Fiind date două numere naturale n şi m, să se formeze un nou număr care să conţină cifrele maxime de pe fiecare poziţie din n şi m. Ex: n=2618, m=3456 → 3658
12. Să se determine c.m.m.d.c. a două numere naturale. (2 variante)
13. Să se afişeze toţi divizorii (proprii) comuni a două numere naturale.
14. Să se determine toate numerele ”perfecte” mai mici decât 10000. Un număr este perfect dacă este egal cu suma tuturor divizorilor săi (inclusiv 1).
15. Testaţi dacă un număr natural dat este prim. (Prin număr prim înţelegem orice număr natural care se împarte doar la 1 şi la el însuşi; se considera ca 2 este cel mai mic număr prim).
16. Se citeşte de la tastatură un număr natural x mai mare decât 2. Sa se găsească p şi q numere prime astfel încât p<x<q, iar diferenta q-p este minima.
17. Se citeşte de la tastatură un număr natural par. Sa se decida dacă acesta poate fi scris ca şi suma de două numere prime şi sa se afişeze toate soluţiile găsite (se va considera ca şi 1 este număr prim). (Conjectura lui Goldbach: “Orice număr par mai mare decat 2 este suma a două numere prime.”)
18. Se citeşte de la tastatură un număr natural. Sa se decida dacă acesta poate fi scris ca şi suma de două patrate şi sa se afişeze toate soluţiile găsite.
19. Sa se afişeze primele n perechi de numere prime care sunt consecutive în multimea numerelor impare.
20. Sa se descompună un număr natural n în factori primi. Ex: 360=23*32*51
21. Se citesc de la tastatură n numere naturale şi un număr prim p. Se cere să se găsească un număr k maxim astfel încât produsul celor n numere să se dividă cu pk, fără a calcula produsul. Ex: p=2, cele 4 numere sunt: 10=21*5, 8=23, 3=20*3, 28=22*7 → k=6
22. Se citesc n nr nat de la tastatură. Sa se determine în câte zerouri se va termina produsul acestora, fără a calcula efectiv produsul. Ex: 12, 35, 30, 75 → 3 zerouri
23. Sa se calculeze nm efectuand mai putin de m-1 inmultiri. (Atentie la valorile n şi m, ca rezultatul sa nu depaseasca cel mai mare int (232)!. Ex: se poate calcula cel mult 231, 320, 513, etc. )
VECTORI
24. Dat fiind un tablou unidimensional (vector) cu numere întregi, determinaţi minimul şi maximul din acest tablou.
25. Să se determine primii n termeni ai şirului lui Fibonacci.
26. Să se transforme un nr nat din baza 10 în baza 2.
27. Să se transforme un nr nat din baza 10 în baza 16.
28. Să se transforme un număr natural din baza 10 în baza b[2, 9].
29. Să se transforme un nr nat din baza 2 în baza 10.
30. Să se transforme un nr nat din baza 16 în baza 10.
31. Să se transforme un nr nat din baza b[2, 9] în baza 10.
32. Fiind dat polinomul de gradul n cu coeficienti reali P(X)=anXn+an-1Xn-1+…+a1X+a0, să se calculeze P(x), unde x este un nr real dat. Ex: P(X)=3X^2-X+1, x=2, P(2)=11
33. Fiind dat polinomul de gradul n cu coeficienti reali P(X), să se calculeze P(x)(x-b), unde b este un nr real dat.
34. Sa se calculeze derivata de ordin întâi a unui polinom de grad n cu coeficienti întregi, reprezentat cu ajutorul unui vector.
35. Sa se determine catul şi restul impartirii unui poliom de grad n cu coef întregi la (X-b), folosind schema lui Horner.
36. Sa se adauge un element în interiorul unui vector de numere reale, fără a suprascrie elementele deja existente.
37. Sa se stearga un element din interiorul unui vector de numere reale şi sa se acopere spatiul ramas gol prin deplasarea spre stanga a tuturor elementelor din dreapta sa.
38. Sa se simuleze ciurul lui Eratostene (algoritm cu ajutorul căruia pot fi determinate numerele prime mai mici decât un număr dat) intr-un vector de n numere naturale.
39. Se dau două mulţimi de numere întregi memorate cu ajutorul vectorilor. Să se calculeze reuniunea celor două mulţimi.
40. Sa se calculeze intersectia a două multimi de numere reale reprezentate cu ajutorul vectorilor.
41. Sa se calculeze diferenta A/B a două multimi A, B de numere reale reprezentate cu ajutorul vectorilor (diferenta semnifica elementele care sunt în A şi nu sunt şi în B).
MATRICI
42. Construirea transpusei unei matrici oarecare de elemente reale.
43. Interschimbarea a două linii (coloane) dintr-o matrice oarecare de elemente reale.
44. Sa se calculeze valoarea maxima dintr-o matrice oarecare de elemente reale şi sa se afişeze toate pozitiile din matrice unde se gaseste aceasta.
45. Sa se calculeze valoarea minima dintr-o matrice oarecare de elemente reale şi sa se afişeze numărul de aparitii al acestei valori în matrice.
46. Sa se calculeze suma elementelor de pe diagonala principala dintr-o matrice pătratică de elemente întregi.
47. Sa se calculeze suma elementelor de pe diagonala secundara dintr-o matrice pătratică de elemente întregi.
48. Sa se calculeze suma elementelor din triunghiul de sub diagonala principala dintr-o matrice pătratică de elemente întregi.
49. Sa se calculeze suma elementelor din triunghiul de deasupra diagonalei secundare dintr-o matrice pătratică de elemente întregi.
50. Sa se calculeze suma elementelor din triunghiul de sub diagonala secundara dintr-o matrice pătratică de elemente întregi.
51. Sa se verifice care dintre liniile unei matrici oarecare de elemente întregi este simetrica (elementele egal departate de capetele liniei sunt egale).
52. Sa se calculeze produsul dintre o matrice şi un vector de elemente întregi.
53. Sa se calculeze produsul a două matrici de elemente întregi de forma (m,n) şi (n,p).
Animor says:
Mi-ar prinde bine un exemplu cu un viewbox si un scroll viewer.
As dori ca atunci cand e minimizata fereastra sa pot vedea continutul cu ajutorul scroll-ului, dar la maximizare as dori sa disapra scroll viewer-ul daca aplicatia incape pe un ecran.
Apoi daca am doua monitoare as vrea sa fie maximizata fereastra pe ambele.
zeltera says:
Nu stiu cum se face ceea ce vrei tu, mai ales ca nu prea dai detalii. In ce limbaj? Cu ce tehnologie? Ce contine acel viewbox?
Un raspuns simplu este, presupunand ca folosesti winform sau wpf, sa monitorizezi window.state (parca) si daca acest state == maximized atunci modifici vizibilitatea scroll-ului. Cum faci maximizarea pe doua ecrane nu stiu – nu am avut niciodata doua monitoare legate de un singur calculator. Insa ar trebui sa fie documentatie pe msdn.
EUGEN PARASCHIV says:
Salutare,
Feicitari pentru ce faci, si multumesc pt. tutorial. Daca doresti sa comunicam scriemi pe adresa mea de mail, pe care ti-am lasato, mi-ar face placere. Ms frumos.
dumos says:
Cred ca ar fi interesant un exemplu folosind nhibernate (cateva clase si o mica baza de date), adica o mica aplicatie functionala care prin care sa poti merge pas cu pas in care sa fie incorporate principalele principii ale acestei tehnologii folosite destul de des in zilele noastre.
Ms anticipat.
zeltera says:
Multumesc pentru sugestie. O sa ma gandesc la ceva si o sa pun aici.
razvangry says:
salut,
scuze pt off-topic… interesante mi s-ar parea si niste exemple cu SSIS
multumesc,
Razvan
zeltera says:
Ce e SSIS?nn1
Alina says:
Buna,
Se cauta exemple de matematica clasele primare sau chiar pentru bac….
Vlad says:
Salut, ar fi interesant daca ne-ai putea arata o conexiune bluetooth pe android. Adica mai exact m-ar interesa cum as putea sa ma conectez la un dispozitiv pe care l-am gasit deja, am o parte de cod dar nu reusesc sa ma conectez. Eventual as putea sa-ti trimit codul. Iti multumesc !