Academos
  1. Subiecte
  2. Bacalaureat
  3. Informatică mate-info, C
  4. 2024 specială
  5. Subiectul al III-lea, 3. b)

Subiectul al III-lea, 3. b)

Bacalaureat 2024, Informatică mate-info, C, sesiunea specială.

Fișierul numere.in conține un șir de cel mult 10⁶ numere naturale din intervalul [0,99]. Numerele din fișier sunt separate prin câte un spațiu. Se cere să se determine primul și ultimul număr din șir care conțin cea mai mare cifră ce apare în scrierea numerelor din fișier. Numerele determinate se afișează pe ecran, în ordinea apariției lor în șir, separate printr-un spațiu. Dacă nu există două astfel de numere pe poziții distincte, se afișează pe ecran mesajul nu exista. Proiectați un algoritm eficient din punctul de vedere al timpului de executare și al spațiului de memorie utilizat. Exemplu: dacă fișierul conține numerele 34 5 38 30 87 70 11 8 82 25 se afișează pe ecran 38 82, dacă fișierul conține numerele 34 5 38 30 87 70 11 8 38 25 se afișează pe ecran 38 38, iar dacă fișierul conține numerele 34 5 38 30 se afișează pe ecran nu exista.

Cerința

8 puncte

Scrieți programul C/C++ corespunzător algoritmului proiectat. (8p.)

Arată baremul

SUBIECTUL al III-lea, 3.b. Pentru program corect - 8p. - operații cu fișiere: declarare, pregătire în vederea citirii, citire din fișier - 1p. - determinare a valorilor, conform cerinței (*),(**) - 5p. - utilizare a unui algoritm eficient, conform cerinței (***) - 1p. - declarare a variabilelor, afișare a datelor conform cerinței, corectitudine globală a programului¹⁾ - 1p. (*) Se acordă punctajul chiar dacă algoritmul ales nu este eficient. (**) Se acordă numai 3p. dacă algoritmul este principial corect, dar nu oferă rezultatul cerut pentru toate seturile de date de intrare. (***) Se acordă punctajul numai pentru un algoritm liniar (de complexitate O(n)), care utilizează eficient memoria. O soluție posibilă citește datele din fișier și, pe măsura parcurgerii lor determină cifra maximă întâlnită (cifMax), și primul și ultimul număr dintre cele citite care conțin această cifră (p, respectiv u). Pentru fiecare număr citit x se determină cifra maximă, cm (maximul dintre x%10 și [x/10]) și, dacă cm>cifMax se actualizează cifMax, p și u (cifMax←cm, p←x, u←-1), iar dacă cm=cifMax, se actualizează u (u←x). După parcurgerea tuturor numerelor, se afișează p și u sau mesajul indicat (dacă u=-1). 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.

Același item în alte lucrări

Sesiuni de examen

2026
2025
2024
2023
2022
2021

Simulări, modele de subiect și subiecte de rezervă

2026
2025

Toate variantele itemului Subiectul al III-lea, 3. pe o singură pagină

Exersează zilnic cu Academos

Aplicația pentru Evaluarea Națională și Bac. În curând pe:

  • App Store
  • Google Play