Exercici 1 · Fundamentos de Programación I URV Examen Parcial de Fonaments de Programació I

Tema: Esquema de cerca amb aturada anticipada · Del examen Examen Parcial de Fonaments de Programació I

Enunciado

Exercici 1 (6 punts). Monitoratge de situacions crítiques

Es precisa dissenyar un mòdul per gestionar les alertes en una central de recepció d'emergències. El canal d'entrada proporciona un flux indefinit d'enters on cada enter representa un estat concret. Dins d'aquest flux, existeixen dues situacions d'extrema urgència:

El codi 999 identifica un incident molt greu.

El codi 99 identifica un incident greu.

La seqüència finalitza indefectiblement amb el valor sentinella -100.

El sistema ha d'aturar l'escaneig tan aviat com s'hagin detectat totes dues alertes crítiques (aplicació d'una tècnica de cerca). Si el flux s'acaba abans de trobar ambdues, el programa s'ha de detenir en assolir el sentinella.

En finalitzar l'execució, cal generar un informe amb:

La primera posició (començant a comptar en 1) en què s'ha localitzat cadascuna de les dues alertes crítiques, sempre que hagin aparegut.

Un avís explícit en cas que no s'hagi registrat cap incidència greu ni molt greu durant el registre.

Enunciado: Exercici 1 · Fundamentos de Programación I URV Examen Parcial de Fonaments de Programació I

Solución

Según los criterios oficiales de corrección

Exercici 1 (6 punts). Monitoratge de situacions crítiques: disseny en pseudocodi.

Solución: ```pseudocode algorisme monitoratge_alertes const MARCA_FI <-- -100 CODI_GREU <-- 99 CODI_MOLT_GREU <-- 999 fconst var dada_actual, posicio_actual: enter pos_primer_mg, pos_primer_g: enter vist_molt_greu, vist_greu: boolea fvar inici posicio_actual <-- 1 vist_molt_greu <-- fals vist_greu <-- fals escriure("Introduïu els codis d'alerta acabant amb ", MARCA_FI) llegir(dada_actual) mentre (dada_actual <> MARCA_FI) i ((no vist_molt_greu) o (no vist_greu)) fer si (dada_actual = CODI_MOLT_GREU) i (no vist_molt_greu) llavors vist_molt_greu <-- cert pos_primer_mg <-- posicio_actual sino si (dada_actual = CODI_GREU) i (no vist_greu) llavors vist_greu <-- cert pos_primer_g <-- posicio_actual fsi fsi llegir(dada_actual) posicio_actual <-- posicio_actual + 1 fmentre si (no vist_molt_greu) i (no vist_greu) llavors escriure("No s'ha detectat cap alerta greu ni molt greu") sino si (vist_molt_greu) llavors escriure("Primera incidència molt greu registrada a l'índex: ", pos_primer_mg) fsi si (vist_greu) llavors escriure("Primera incidència greu registrada a l'índex: ", pos_primer_g) fsi fsi falgorisme ```

La explicación paso a paso, hecha con IA, es Premium. Premium

Resuélvelo aquí mismo: corrección automática, pistas y solución paso a paso.

‹ Exercici 1 · Examen Parcial 1. Elements bàsics: Recorregut i cerca

Más ejercicios de Esquema de cerca amb aturada anticipada