Site-ul unui adolescent (Ionita Cosmin)

#1 - Printf simulator

Acest prim proiect postat pe site este unul destul de interesant. Se refera la simularea instructiunii de printare pe ecran din C, si anume printf. 

In limbajul C, sintaxa instructiunii printf este urmatoarea: printf("TEXT %q", x)

Unde 'TEXT' este orice sir (de caractere alfanumerice) scris de utilizator iar %q este un specificator de format. q poate fi: d (decimal), f(float), l (long), c (char), s(string) si cam atat. Sper sa nu fi ratat vreunul.

Acest specificator de format afisaza valoarea variabilei x, care este, de asemenea transmisa ca parametru functiei printf. Tipul variabilei x trebuie sa fie acelasi cu cel al specificatorului de format (de exemplu, daca avem %d, variabila trebuie sa fie de tip int pentru a o afisa acolo unde trebuie). Bineinteles, acesti specificatori de format pot fi plasati in diferite pozitii ale printf - ului, pot fi transmise ca parametru mai multe variabile, si de aici o intreaga discutie.

 

Acum eu, sub indrumarea domnului profesor inginer programator Catalin Tudose, am creat un program care simuleaza aceasta instructiune. Adica face exact ce face si ea.

 

Aici avem codul: printf_simulator.h 

 E foarte mult de povestit. Las la indemana voastra intelegerea codului, desi am mari indoieli in aceasta privinta: nu prea am respectat un principiu fundamental in programare: "any fool can write a code that a computer can understand. Good programmers write code that a human can understand" 

 

#ifndef PRINTF_SIMULATOR_H_INCLUDED
#define PRINTF_SIMULATOR_H_INCLUDED

#include<iostream>
#include<cstdarg>
#include<cstdlib>

#include<cstring>

 

 

#2 - Graf simulator


Graf simulator este o aplicaţie creată in mediu vizual, care desenează un graf complet, cu număr de noduri dat precum si valoarea zoom-ului (măririi desenului).
 
după cum observaţi,  programul nu este foarte greu de utilizat. Există două text-boxes in care utilizatorul introduce două valori, zoom-ul şi numărul de noduri apoi observăm trei butoane simple: primul este cel care desenează efectiv graful complet, al doilea, după cum ii spune şi numele, şterge un graf deja desenat iar al treilea buton corespunde terminării execuţiei programului.
 
Zoom-ul optim are valoarea 100.
 
© Ionita Cosmin 

#3 - Time to BAC 2014

Acest proiect l-am creat imediat dupa ce am inceput clasa a 12-a, in ideea de a realiza un ultim proiect in C# din cadrul suitei "Summer Time Projects 2013". Programul afisaza timpul efectiv pana la BAC (mai exact pana la 1 iunie 2014). 

  Aplicatia are nevoie de un fisier auxiliar in care memoreaza doi timpi: timpul efectiv care a mai ramas pana la bac in momentul in care am iesit din program ultima data precum si timpul sistemului din acelasi moment. Cand se deschide aplicatia, se calculeaza timpul sistemului in acel moment, se citesc din fisier cei doi timpi dupa care se face diferenta de timp scurs intre momentul in care am oprit aplicatia ultima data si momentul prezent. Din timpul total ramas pana la bac se scade aceasta diferenta si apoi intr-un control de tip timer se afisaza timpul efectiv care a ramas pana la bac.

 

Toate diferentele de timpi sunt facute "by hand" in sensul ca nu am folosit supraincarcarea operatorului (-) al clasei DateTime (am avut ideea sa fac asta dar in momentul in care am proiectat aplicatia, nu am gasit acest operator supraincarcat). Ca urmare, am facut totul la low-level, pentru a mai invata cate ceva.

Cod: TimeToBac2014_Source_Code