You are on page 1of 2

Algoritmo glosa es

Inicio
Introducir_glosa;
lectura_caracter;
Mientras queden_versos_por_tratar_y_se_hayan_tratado_menos_de_4 hacer
Mientras queden_palabras_en_el_verso hacer
Contar_número_de_sílabas_totales_del_versos_y_almacenar_última_palabra_verso;
Fin Mientras;
Guardar_rima_palabra_y_recalcular_sílabas_verso;
Fin Mienreas;
Comparar_rima;
Visualizar_resultados;
Fin glosa;
Algoritmo Contar_número_de_sílabas_totales_del_versos es
Inicio
Mientras caracter_no_sea_blanco_ni_asterisco_ni_punto hacer
Si caracter_es_vocal entonces
Incrementar_contador_de_sílabas_del_verso;
fin si;
Almacenar_caracter;
Incrementar_indice;
Fin mientras;
Inicializar_indice;
si caracter_es_asterisco entonces
contabilizar_sílaba;
fin si;
Fin Contar_número_de_sílabas_totales_del_versos;
Algoritmo Guardar_rima_palabra_y_recalcular_sílabas_verso es
Inicio
Si palabra_tiene_acento entonces
Para_cada_caracter_desde_el_caracter_acentuado_hasta_fin_palabra hacer
almacenar caracter;
Si caracter_es_vocal entonces
incrementar contador_silabas_palabra;
fin si;
Fin mientras;
Si contador_silabas_palabra_es_2 entonces
decrementar_en_1_num_silabas_verso;
si contador_silabas_palabra es 3 entonces
decrementar_en_2_num_silabas_verso;
si contador_silabas_palabra es 4 entonces
decrementar_en_3_num_silabas_verso;
fin si;
Sino
Si palabra_termina_en_vocal_o_vocal_más_s_o_n entonces
decrementar_en_1_num_silabas_verso;
Para cada caracter_desde_fin_palabra_hasta_penultima_vocal hacer
almacenar_caracter;
fin mientras;

Sino
Para cada caracter_desde_fin_palabra_hasta_ultima_vocal hacer
almacenar_caracter;
fin mientras;
Fin si;
Fin Guardar_rima_palabra_y_recalcular_sílabas_verso;
Algoritmo comparar_rima es
Inicio
Si numero_de_versos_es_4 entonces
Para cada_caracter_de_la_rima_guardada_del_verso_1_i_4 hacer
compararcaracter_verso_1_con_caracter_verso_4;
fin mientras;
Para cada_caracter_de_la_rima_guardada_del_verso_2_i_3 hacer
compararcaracter_verso_2_con_caracter_verso_3;
fin mientras;
Visualizar_si_riman_o_no
Si numero_de_versos_es_3 entonces
Para cada_caracter_de_la_rima_guardada_del_verso_2_i_3 hacer
compararcaracter_verso_2_con_caracter_verso_3;
fin mientras;
Visualizar_si_riman_o_no_y_que_no_se_ha_podido_comparar_las_demas_rimas;
Sino
Visualizar_no_se_ha_podido_comparar_la_rima:
Fin si;
Fin comparar_rima;

Algoritmo Visualizar_resultados es
Inicio
Si numero_de_versos_es_menor_que_4 entonces
visualizar_faltan_versos;
Si numero_de_versos_es_4_y_ultimo_caracter_leido_es_* entonces
visualizar_hay_demasiados_versos;
Sino
Visualuzar_el_numero_de_versos_es_correcto;
Fin si;
Para cada_verso hacer
Si numero_silabas_verso_es_7 entonces
Visualizar_numero_de_silabas_correcto;
Si numero_silabas_verso_es_menor_que_7 entonces
Visualizar_faltan_silabas_en_verso;
Sino
Visualizar_sobran_silabas_en_verso;
Fin si;
Fin mientras;
Fin Visualizar_resultados;