Diferență între revizuiri ale paginii „PC Tema 1”
(→Notare) |
|||
Linia 71: | Linia 71: | ||
<span style="color: red; font-weight: bold;">Atenție: </span> Pentru această temă se pot SCĂDEA 11 puncte, dacă aceasta se dovedește că este copiată. | <span style="color: red; font-weight: bold;">Atenție: </span> Pentru această temă se pot SCĂDEA 11 puncte, dacă aceasta se dovedește că este copiată. | ||
+ | |||
+ | = Termen limită = | ||
+ | |||
+ | Termenul limită pentru depunerea temei este 21 noiembrie. Apoi, pentru fiecare zi întârziere, veți fi penalizați cu un punct. |
Versiunea de la data 7 noiembrie 2015 15:22
În telecomunicații, diferite caractere trimise în cadrul unui SMS au un statut special și de aceea trebuie numărate pentru a calcula corect dimensiunea în octeți a mesajului, și deci costul serviciului de transmisie. Pentru această temă, se cere numărarea și afișarea diferitelor tipuri de caractere dintr-un mesaj citit de la tastatură.
Cerință
Dându-se un șir de caractere, citit caracter cu caracter, de la tastatură, până la întâlnirea caracterului newline ('\n'), să se numere și să se afișeze câte caractere s-au introdus din ficare categorie:
- litere mici (a-z)
- litere mari (A-Z)
- cifre (0-9)
- caractere neprintabile (spații sau caractere tab - '\t')
- caractere speciale (orice alt caracter printabil de pe tastatură care nu este literă, cifră sau spațiu).
Date de intrare
O singura linie de text, terminată cu Enter
.
Exemplu
Andrei s-a dus la piata si a cumparat 3 kilograme de cartofi si 5 de castraveti!
Date de ieșire
Cinci linii de text, de formatul următor:
Litere mici: %d Litere mari: %d Cifre: %d Caractere neprintabile: %d Caractere speciale: %d
Exemplu (pentru intrarea de mai sus)
Litere mici: 60 Litere mari: 1 Cifre: 2 Caractere neprintabile: 15 Caractere speciale: 2
Observații
- Un caracter se poate citi de la tastatură cu funcția
getchar()
. Această funcție este definită în fișierul headerstdio.h
. Exemplu:#include<stdio.h> int main(){ printf("Introduceti un caracter: "); char c = getchar(); printf("Caracterul introdus a fost: %c\n", c); return 0; }
- Tasta
Enter
produce un caracter numit newline care are codul ASCII 10 (sau '\n'). - Formatul textului de la ieșire trebuie să fie identic cu cel de mai sus pentru a evita depunctarea de către programul de evaluare.
- Acesta este un executabil pentru Linux pe 32 de biți care implementează tema. Îl puteți folosi pentru testare.
Restricții
Nu se pot utiliza vectori/ șiruri de caractere.
Livrabile și modalitate de predare
Predarea se face pe platforma Web-Cat și constă în upload-ul unui singur fișier sursă C care să implementeze funcționalitatea cerută.
Notare
Pentru această temă se pot acorda 10 puncte:
- 7 puncte pentru comportamentul aplicației, care se acordă automat în funcție de calitatea temei de către platforma de testare;
- 3 puncte pentru stilul de scriere a programului, alinierea codului, nume lizibile de variabile, etc., care se acordă de către un cadru didactic.
Atenție: Pentru această temă se pot SCĂDEA 11 puncte, dacă aceasta se dovedește că este copiată.
Termen limită
Termenul limită pentru depunerea temei este 21 noiembrie. Apoi, pentru fiecare zi întârziere, veți fi penalizați cu un punct.