Microsoft Visual C++ (abreviat MSVC) is a commercial integrated development environment (IDE) product engineered by Microsoft for the C, C++, and C++/

Documente similare
CASA CORPULUI DIDACTIC BRAILA PROGRAM DE FORMARE INFORMATICA SI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: TIMOFTI V. AFRODITA COLEGIUL

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

Microsoft Word - MANUAL_APP_ROMPOS_V7.docx

Microsoft Word - Curs_08.doc

Ghid de utilizare pentru Platforma E-Admitere intranet.inj.md

NORMĂ pentru aplicarea Ghidului ESMA privind raportările referitoare la decontarea internalizată conform articolului 9 din regulamentul privind depozi

preview_ _Prezentare_Mobile_App

Ghid privind raportările referitoare la decontarea internalizată conform articolului 9 din regulamentul privind depozitarii centrali de titluri de val

1. a. Să se scrie un algoritm care să afişeze toate numerele de patru cifre care au cifra sutelor egală cu o valoare dată k, şi cifra zecilor cu 2 mai

E_d_Informatica_sp_MI_2015_bar_02_LRO

Slide 1

Inserarea culorilor in tabele

E_d_Informatica_sp_SN_2014_bar_10_LRO

Ghid utilizare aplicație PARKING BUCUREȘTI Aplicație PARKING BUCUREȘTI 1

Settlement participant system

EXCEL FĂRĂ SECRETE Grafice şi diagrame

Fâciu N. Maria-Ema CASA CORPULUI DIDACTIC BRĂILA PROGRAM DE FORMARE INFORMATICĂ ȘI TIC PENTRU GIMNAZIU CLASA A V-A SERIA 1 GRUPA 2 CURSANT: Fâciu N. M

Hotel Problema 1. Hotelul oferă clienților camere single și camere duble precum și apartamente. Să se implementeze modulul care construiește ca

Tema laborator TS.NET 2019 Vom simula (partial, in scop didactic) activitatea unui service auto. Pentru aceasta vom considera urmatoarele tipuri: Clie

Utilizarea Internetului in Afaceri FSEGA, UBB Lect.univ.dr. Daniel Mican LABORATOR 3. Achizitionarea domeniilor web si a

Managementul Resurselor Umane

Probleme proiect TP BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard da

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

Utilizarea Internetului in Afaceri FSEGA, UBB Lect.univ.dr. Daniel Mican LABORATOR 1. Google Drive, Google Calendar, WeTr

Laborator 4: Continuare Programare Orientată pe Obiecte Întocmit de: Adina Neculai Îndrumător: Asist. Drd. Gabriel Danciu 29 octombrie 2011

Introducere în limbajul JavaScript

Modul Modbus ASCII SISTEME DE COMUNICATIE CURS 5 - Constantinescu Catalin Atunci cand se foloseste modul MODBUS ASCII fiecare octet din mesaj

Avenir Telecom isi consolideaza activitatea in Romania cu ajutorul Microsoft Dynamics NAV Despre organizatie Avenir Telecom are peste 3000 de angajati

Subiectul 1

PowerPoint Presentation

O SINGURĂ licență și ai acces de pe oricâte stații de lucru! Olteniei nr.4, Baia Mare Tel.: 0262 / , 0743 /

Furnicuţa şi-a construit un depozit pentru grăunţe

carteInvataturaEd_2.0_lectia5.pdf

MergedFile

PROIECT

Microsoft Word - tcad_l6.doc

Microsoft Word - lab_access.doc

R E G U L A M E N T U L privind utilizarea Sistemului Informațional Automatizat Acreditare (SIA Acreditare) în cadrul Centrului Național de Acreditare

Microsoft Word - Rezolvarea Test nr. 11.doc

Manual de utilizare a Sistemului Informațional al Institutului Național al Justiției (SI INJ) intranet.inj.md Ver.2 Manual de utilizare a Sistemului I

manual_ARACIS_evaluare_experti_v4

Raportarea serviciilor de dializă la nivel CNAS

Schliesszylinder_RO_SK_HR.indd

INTREBARI FRECVENTE SI MANUAL DE UTILIZARE hub.sendsms.ro

Nr.înregistrare: 88 / Social Media in the Classroom Prof.Cucuianu Marița Colegiul Național,,Neagoe Basarab"Oltenița,jud.Călărași 2.Quizizz E

Laborator Implementarea algoritmului DES - Data Encryption Standard. Exemplu DES Algoritmul DES foloseşte numere b

Advance CAD 2016 SP1 Acest document descrie îmbunătățirile pentru Advance CAD 2016 Service Pack 1. Notă: Advance CAD 2016 Service Pack 1 este compatib

Microsoft Word - Laboratorul 3.doc

Unitatea: Școala Gimnazială Disciplina: Informatică și TIC Programa școlară aprobată cu OMEN nr.3393 din Profesor: prof. Clasa: a V-a A, B

Laborator 3

Slide 1

Sablon PowerPoint romana

CABINET MINISTRU

PHP (II)

Microsoft Word - Curs_10.doc

manual_ARACIS_evaluare_experti_v5

Interfețe și Protocoale de Comunicații Arduino-Port Paralel Arduino. Laborator 1- Portul Paralel 1 Caracteristici generale Arduino UNO este o placă de

Lab6LCD

Microsoft Word - TIC5

Minicurs CCS C / Aplicatia1 1.Programul CCS C Compiler. Instalare.Creare proiect. Descarcati ultima versiune a programului de

CERERE ONLINE PENTRU INSCRIEREA LA CRESA CAPITOLINA SI SECTIA DE LEGATURA (SEZIONE PONTE) ANUL 2014/15 Ghid pentru familii Domanda online iscrizioni n

Matematici aplicate științelor biologie Lab06 MV

PowerPoint Presentation

Microsoft Word - versiunea D doc

Ghid de utilizare al serviciului VB24 Web 1

MODUL RETAIL

Utilizarea Internetului in Afaceri FSEGA, UBB Lect.univ.dr. Daniel Mican LABORATOR 6. Vizualizarea statisticilor prin int

Microsoft Word - Lab1a.doc

ALGORITMII ŞI REPREZENTAREA LOR Noţiunea de algoritm Noţiunea de algoritm este foarte veche. Ea a fost introdusă în secolele VIII-IX de către Abu Ja f

FONDUL SOCIAL EUROPEAN

Nr. 932 din Avizat ISJ Vâlcea, Inspector școlar informatică, Ciochină Luisa EXAMEN DE ATESTARE A COMPETENȚELOR PROFESIONALE A ABSOLVENȚILOR

Microsoft Word - V_4_Inmultirea_nr_nat.doc

CURS

Baze de date Anul 2 Teorie Examen 1. Diagrama entitate/relatie si diagrama conceptuala (curs 2-5) 2. Arbore algebric si expresie algebrica (curs 6-10)

Microsoft Word - Tematica examen AII.doc

A

O NOUA PROBLEMA DE CONCURS OLIMPIADA MUNICIPALA DE INFORMATICA, IASI 2019 V-am promis într-un articol mai vechi ca vom prezenta pe acest blog câteva p

Metode API - integrare FGO v.2.5 Cuprins ISTORIC VERSIUNI... 2 INTRODUCERE... 2 APELARE... 4 NOMENCLATOARE... 4 FACTURA... 5 EMITERE... 5 PRINT... 6 S

Gestiunea serviciilor de recuperare a sănătăţii în sanatorii şi preventorii

Anexa 13 Grila de evaluare Faza B Nr. Crt Denumire Criteriu Barem Punctare Punctaj acordat si motivare I. Descrierea afacerii și a strategiei de imple

fIŞE DE LUCRU

Modificarea datelor de călătorie ale unui bilet CFR online achiziționat Modificarea datelor de călătorie ale unui bilet CFR online achiziționat (respe

PROGRAMARE ORIENTATA PE OBIECTE

Sisteme de calcul în timp real

Facultatea de Științe Politice, Administrative și ale Comunicării Str. Traian Moșoiu nr. 71 Cluj-Napoca, RO Tel.: Fax:

FORMULAR DE APLICARE

Microsoft Word - Case de marcat si Imprimante fiscale cu jurnal electronic.docx

e-learning Agronomie Platforma de e-learning Versiunea: Ghid de utilizare Beneficiar: UNIVERSITATEA DE STIINTE AGRONOMICE SI MEDICINA VETERINARA

Slide 1

Clasa IX 1. O lăcustă face salturi, fiecare salt în linie dreaptă şi de două ori mai lung ca precedentul. Poate vreodată lăcusta să revină în punctul

Manual de utilizare Room Booking System

PowerPoint Presentation

Microsoft Word - Matematika_kozep_irasbeli_javitasi_0911_roman.doc

Investeşte în oameni Proiect cofinanţat din Fondul Social European prin Programul Operaţional Sectorial pentru Dezvoltarea Resurselor Umane

Concurs online de informatică Categoria PROGRAMARE PROBLEMA 1 Secţiunea 7-8 avansaţi 100 puncte DEMOCRATIE Arpsod are în curtea sa N copaci foarte băt

A.E.F. - suport laborator nr.10 sem.ii Analiza stării de contact între elemente 3D În acest laborator sunt atinse următoarele aspecte: analiza contact

ANEXA_12_Grila_evaluare_th_fin_Plan_Afaceri

Furnicuţa şi-a construit un depozit pentru grăunţe

Fgggfbn x

Laborator 1 suport teoretic Mediul de dezvoltare Eclipse GLOSAR - Aplicaţie: program obţinut în urma aplicării operației BUILD asupra unui proiect (ve

Transcriere:

Proiect (100 puncte) Pe o platformă online se comercializează produse alimentare și nealimentare. Pentru un produs, pe lângă atributele comune: cod identificare, denumire, descriere, categorie, preț etc. vor fi și atribute specifice, cum ar fi spre exemplu perioada de valabilitate respectiv garanția. Produsele comercializate se află la un depozit central de unde se obțin informații referitoare la prețul unitar și la stocurile existente. Platforma permite clienților înregistrați să plaseze comenzi. O comandă vine sub forma unui fișier text în care pe prima linie este trecut id-ul clientului iar pe fiecare din liniile următoare este trecut codul unui produs comandat și cantitatea. Ex.: idclient codprodus1/1 codprodus2/5... Pentru fiecare comandă primită trebuie să se emită o factură după modelul din link (click aici). O factură trebuie să poată fi printată sau salvată sub forma unei imagini. Pentru etichetarea produselor este necesară implementarea posibilității de a genera coduri de bare (EAN-8 și EAN-13) pentru acestea, coduri pe baza cărora să se poată face identificarea lor. Folosind principii POO (moștenire, polimorfism, încapsulare etc), să se scrie o ierarhie de clase care să permită modelarea celor descrise anterior (se vor folosi și diagrame UML). Să se scrie o aplicație care să poată fi utilizată la activitățile descrise anterior. Aplicația trebuie să aibă interfață grafică, să aibă un meniu principal și o bară de instrumente. Observații: la realizarea proiectului se poate lucra și în echipă; detalii suplimentare se vor obține la orele de curs și laborator; proiectele identice/asemănătoare vor fi penalizate (cu excepția membrilor aceleiași echipe). Barem (200a+100b+100c): implementare corectă a claselor (40a+25b+30c) o respectarea cerințelor proiectului (15a+5b) o utilizarea corectă a principiilor POO (15a+5b+20c) o generarea ierarhiei de clase folosind diagrame UML (10a+15b+10c) 1

implementare gestionare stocuri (40a+25b+20c) o implementare clasă gestionare stocuri utilizând pattern-ul Singleton (20a+15b+20c) o citire/scriere informații în fișiere (20a+10b+20c) implementare gestionare clienți/facturi (40a+25b+20c) o implementare clase pentru gestionarea clienților (10a+10b+10c) o implementare generare facturi (10a+5b+10c) o implementare salvare/printare facturi (20a+10b) implementare generare cod bare EAN-8 și EAN-13 (40a+25b+30c) o verificare validitate valoare de codat (10a+5b) o implementare algoritm generare cod bare (10a+5b+10c) o desenare cod bare funcție de tipul ales (cu/fără valoarea de reprezentat) (10a) o salvare imagine cod bare (10a+5b) o determinare valoare dintr-o imagine cu un cod de bare (10a+10b +20c) realizare interfață (40a) o interfață funcțională (20a) o adăugarea elementelor grafice necesare (10a) o aspect interfață (10a) Punctaj: PUNCTAJ=min{60,N1}+min{30,N2}+min{30,N3} unde N1=(numărul de a)* α(numărul de membri ai echipei) N2=(numărul de b) * α (numărul de membri ai echipei) N3=(numărul de c) * α (numărul de membri ai echipei) iar α (1)= 1/3, α (x)= 0.5/x pentru x 2 Termen de predare: ultima săptămână de cursuri Bonus Se acordă 20 puncte bonus pentru implementarea și generarea codurilor matrice QR (quick response). 2

EAN-8 EAN-13 QR Code Pentru detalii despre modul de codare se pot accesa link-urile de mai jos: http://en.wikipedia.org/wiki/international_article_number_(ean) (pentru EAN-8 și EAN 13) http://www.thonky.com/qr-code-tutorial/ (pentru QR Code) Exemplu EAN-8 Exemplul următor va prezenta modul de obținere a codului de bare verticale pentru EAN-8. Valoarea pe care o vom reprezenta va fi: 12345670. Pas 1 Se verifică dacă valoarea dată este corectă. - calculăm Si suma numerelor de pe pozitii impare: Si=1+3+5+7=16 - calculăm Sp suma numerelor de pe poziții pare (ultimul numar, adică 0, nu se ia in calcul, acesta fiind numărul de verificare)? Sp=2+4+6=12 - calculăm 3Si+Sp=3*16+12=48+12=60 - valoarea data este validă dacă ultima cifră (0 în cazul nostru) este egală cu diferenta dintre cel mai mic număr divizibil cu 10 mai mare decat cel obtinut la pasul anterior si numărul obținut la pasul anterior. Deoarece 60 este divizibil cu 10, ultima cifră trebuie sa fie 60-60=0. Cele de mai sus arată că valoarea 12345670 este validă, prin urmare va putea fi reprezentată prin codul de bare EAN-8. Pas 2 Se identifică schema după care se va face reprezentarea. Pentru EAN-8 există o singură schema de reprezentare, și anume: 3

Structura EAN-8 Primele 4 cifre Ultimele patru cifre LLLL RRRR Se crează șirul de biți corespunzător valorii date: - se adaugă 101 corespunzător marcajului de start - pentru fiecare din primele patru cifre se adaugă șirul de 7 biți corespunzător coloanei L - se adaugă 01010 corespunzător marcajului de la mijloc - pentru fiecare din ultimele patru cifre se adaugă șirul de 7 biți corespunzător coloanei R - se adaugă 101 corespunzător marcajului de final - pentru EAN-8 valorile din coloana G nu sunt necesare. Codificarea caracterelor Caracter L G R 0 0001101 0100111 1110010 1 0011001 0110011 1100110 2 0010011 0011011 1101100 3 0111101 0100001 1000010 4 0100011 0011101 1011100 5 0110001 0111001 1001110 6 0101111 0000101 1010000 7 0111011 0010001 1000100 8 0110111 0001001 1001000 9 0001011 0010111 1110100 În cazul nostrum șirul de biți va fi: 101 0011001 0010011 0111101 0100011 01010 1001110 1010000 1000100 1110010 101 Se desenează codul de bare corespunzător prin linii vertical de lațimi egale, o linie neagră pentru un 1 și o linie alba pentru un 0. 4

Exemplu EAN-13 Exemplul următor va prezenta modul de obținere a codului de bare verticale pentru EAN-13. Valoarea pe care o vom reprezenta va fi: 4013790678751. Pas 1 Se verifică dacă valoarea dată este corectă. - calculăm Si suma numerelor de pe pozitii impare: Si=4+1+7+0+7+7=26 - calculăm Sp suma numerelor de pe poziții pare (ultimul numar, adică 1, nu se ia in calcul, acesta fiind numărul de verificare)? Sp=0+3+9+6+8+5=31 - calculăm Si+3Sp=26+3*31=26+93=119 - valoarea data este validă dacă ultima cifră (1 în cazul nostru) este egală cu diferenta dintre cel mai mic număr divizibil cu 10 mai mare decat cel obtinut la pasul anterior si numărul obținut la pasul anterior. Deoarece 120 este divizibil cu 10, ultima cifră trebuie sa fie 120-119=1. Cele de mai sus arată că valoarea 4013790678751 este validă, prin urmare va putea fi reprezentată prin codul de bare EAN-13. Pas 2 Se identifică schema după care se va face reprezentarea. Pentru EAN-13 există următoarele scheme: Structura EAN -13 Prima cifră Primul grup de 6 biți Ultimul grup de 6 biți 0 LLLLLL RRRRRR 1 LLGLGG RRRRRR 2 LLGGLG RRRRRR 5

3 LLGGGL RRRRRR 4 LGLLGG RRRRRR 5 LGGLLG RRRRRR 6 LGGGLL RRRRRR 7 LGLGLG RRRRRR 8 LGLGGL RRRRRR 9 LGGLGL RRRRRR Schema se identifică funcție de primua cifră din valoarea de reprezentat, În cazul nostrum 4, adică vom folosi schema: LGLLGG RRRRRR Schema de la pasul precedent se va folosi pentru reprezentarea următoarelor cifre (fără prima, utilizata la identificarea schemei): 013790678751 Vom crea șirul de biți astfel: - se adaugă 101 corespunzător marcajului de start - pentru fiecare din primele șase cifre se adaugă șirul de 7 biți corespunzător coloanelor L, G, R conform schemei și tabelului de mai jos - se adaugă 01010 corespunzător marcajului de la mijloc - pentru fiecare din ultimele șase cifre se adaugă șirul de 7 biți corespunzător coloanelor L, G, R conform schemei și tabelului de mai jos - se adaugă 101 corespunzător marcajului de final Codificarea caracterelor Caracter L G R 0 0001101 0100111 1110010 1 0011001 0110011 1100110 2 0010011 0011011 1101100 3 0111101 0100001 1000010 4 0100011 0011101 1011100 5 0110001 0111001 1001110 6 0101111 0000101 1010000 7 0111011 0010001 1000100 8 0110111 0001001 1001000 9 0001011 0010111 1110100 În cazul nostrum șirul de biți va fi: 101 0001101 0110011 0111101 0111011 0010111 0100111 01010 1010000 1000100 1001000 1000100 1001110 1100110 101 6

Se desenează codul de bare corespunzător prin linii vertical de lațimi egale, o linie neagră pentru un 1 și o linie alba pentru un 0. 7