elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Ayuda PSEINT
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda PSEINT  (Leído 12,154 veces)
dianaco

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Ayuda PSEINT
« en: 14 Agosto 2023, 02:57 am »

Hola, alguno que me ayude con mi CODIGO. Intento encontrar el numero mayor y menor basado en los numeros que tira en el matriz pero por alguna razon me esta tirando resultados diferentes en el reporte final:

Algoritmo 1_1
   Definir posicion1, posicion2, Respuesta_menu, matriz,matriz1, vector1, vector2,vector3, vector4, f, c Como entero;
   
   Escribir "Bienvenidos al Sistema de Gestion GV Ruta 27";
   Escribir "Menu principal';
   Escribir "1.Incializacion de datos";
   escribir "2.Simulacion del flujo vehicular";
   escribir "3.Verfical congestionamiento vial";
   escribir "4.Salir";
   Repetir
      Escribir "Ingrese la opcion deseada";
      leer Respuesta_menu;
   Hasta Que  Respuesta_menu=1 o Respuesta_menu=4
   Segun Respuesta_menu Hacer
       1:
         escribir "Datos inicializados!";
         Escribir "Cantidad de vehiculos por paeje y por dia";
         Escribir "D  L  M  K  J  V  S  Peaje/dia";
         Dimension matriz[4,7], vector1[7], vector2[7];
         definir mayor Como Entero
         definir menor Como Entero
         para f= 1 hasta 4 con paso 1 Hacer
            para c = 1 hasta 7 con paso 1 Hacer
               matriz(f,c) =azar(1);
            FinPara
         FinPara
         para f= 1 hasta 4 con paso 1 Hacer
            para c = 1 hasta 7 con paso 1 Hacer
               escribir matriz(f,c), "  " sin saltar;
            FinPara
            escribir 'Escazu ', (f);
         FinPara
         Escribir "presionar tecla';
         Esperar Tecla;
         Borrar Pantalla;
         escribir "Datos inicializados!";
         Escribir "Cantidad de vehiculos por paeje y por dia";
         Escribir "D   L   M   K   J   V   S  Peaje/dia";
         Dimension matriz1[4,7], vector3[7], vector4[7];
         para f= 1 hasta 4 con paso 1 Hacer
            para c = 1 hasta 7 con paso 1 Hacer
               matriz1(f,c) =azar(300) +1;
            FinPara
         FinPara
         para f= 1 hasta 4 con paso 1 Hacer
            para c = 1 hasta 7 con paso 1 Hacer
               escribir matriz1(f,c), " " sin saltar;
               vector3(f)=vector3(f)+matriz1(f,c);
            FinPara
            escribir 'Clase ', f;
         FinPara
         Escribir '   ';
         escribir '    ';
         Escribir 'GV Ruta 27, reporte Semanal';
         Escribir '--------------------------------------------';
         para f= 1 hasta 4 con paso 1 Hacer
            si ([f]>mayor) Entonces
               mayor=[f]
               posicion1=f
            FinSi
         FinPara
         para f= 1 hasta 4 con paso 1 Hacer
            si ([f]<menor) Entonces
               menor=[f]
               posicion2=f
            FinSi
         FinPara
         Escribir 'El paeje de mayor congestion es: ',posicion1 , ' con', mayor, ' vehiculos procesados';
         Escribir 'El paeje de menor congestion es: ',posicion2 , ' con', menor, ' vehiculos procesados';
         Escribir ' ';
   FinSegun
FinAlgoritmo


« Última modificación: 14 Agosto 2023, 03:05 am por dianaco » En línea

Locura_23

Desconectado Desconectado

Mensajes: 162



Ver Perfil
Re: Ayuda PSEINT
« Respuesta #1 en: 14 Agosto 2023, 03:48 am »

Hola, pues tu pseudo-codigo es difícil de descifrar a simple vista,
pero entiendo que tu problema básico es que no te muestra el menor y el mayor de tu matriz.

Te dejo este ejemplo que acabo de hacer (hace tiempo que no utilizaba pseint)

Suponete que ya tenes definidos num_menor, num_mayor como enteros, para guardar el menor y el mayor de tu matriz, respectivamente.
Luego tienes una matriz de enteros de [3,3] osea 3 filas y 3 columnas

Buscar el menor

1) Primero tienes que tener un valor de referencia para comparar todos los demás valores, a ver si resultan ser menores a este de referencia o no. Para ello puedes utilizar el primer número de tu matriz, en fila 1, columna 1, osea matriz[1,1].

num_menor = matriz[1,1]

2) Tienes que definir un bucle que recorra un número a otro de toda la matriz y haga la comparación de ese número actual con el menor de referencia que definiste antes.
Si es menor que el de referencia, entonces la variable num_menor ahora va a guardar ese valor actual de la matriz como el menor. Este proceso se repite en el bucle para todos los valores, lo que resulta en que obtienes el menor número de la matriz.

para i = 1 hasta 3 Con Paso 1
    para j = 1 hasta 3 Con Paso 1
        si matriz[i , j] < num_menor Entonces
            num_menor = matriz[i, j]
        FinSi
    FinPara
FinPara

De esta manera obtienes el menor, luego para el mayor tienes que invertir el signo de comparación a mayor que, junto con el nombre de la variable a otro que represente el mayor.

* Mi recomendación es que te fijes bien que tengas un valor de referencia para buscar el menor y el mayor, y escribe por pantalla todos los valores de la matriz y los vectores, para ver que sean números válidos y no te está guardando cualquier otra cosa.




« Última modificación: 14 Agosto 2023, 03:52 am por Locura_23 » En línea

dianaco

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Ayuda PSEINT
« Respuesta #2 en: 14 Agosto 2023, 04:44 am »

Hola, intente seguir los consejos que me diste, al momento de intentar procesar el algoritmo me tira este error:

<sin_titulo>: Sintaxis Incorrecta: 2 errores.

Lin 3 (inst 1): ERROR 202: El identificador MATRIZ1 no corresponde a un arreglo o subproceso

Lin 4 (inst 1): ERROR 202: El identificador MATRIZ1 no corresponde a un arreglo o subproceso

basicamente intento que mi algoritmo al momento de hacer el reporte final se vea asi (link a imagen)

file:///C:/Users/diana/OneDrive/Documents/Screenshot%202023-08-13%20203836.png

que al final basado en los numeros que me haya tirado en mi matriz de eso extraiga cual fue el dia de mayor cantidad y menor cantidad viendose asi:

Mi algoritmo esta asi por el momento, mostrando la parte que necesito ayuda:

Algoritmo Proyecto3_Michelle_Colorado_Duarte
   Definir posicion1, mayor1, menor1, posicion2, Respuesta_menu, matriz,matriz1, vector1, vector2,vector3, vector4, f, c Como entero;
   mayor1=matriz1[1,1]
   menor1=matriz1[1,1]
   
         escribir "Datos inicializados!";
         Escribir "Cantidad de vehiculos por paeje y por dia";
         Escribir "D   L   M   K   J   V   S  Peaje/dia";
         Dimension matriz1[4,7], vector3[7], vector4[7];
         para f= 1 hasta 4 con paso 1 Hacer
            para c = 1 hasta 7 con paso 1 Hacer
               matriz1(f,c) =azar(300) +1;
            FinPara
         FinPara
         para f= 1 hasta 4 con paso 1 Hacer
            para c = 1 hasta 7 con paso 1 Hacer
               escribir matriz1(f,c), " " sin saltar;
            FinPara
            escribir 'Clase ', f;
         FinPara
         Escribir '   ';
         escribir '    ';
         Escribir 'GV Ruta 27, reporte Semanal';
         Escribir '--------------------------------------------';
         para f = 1 hasta 4 Con Paso 1
            para c = 1 hasta 7 Con Paso 1
               si matriz1[f , c] < mayor1 Entonces
                  mayor1 = matriz1[f, c]
               FinSi
            FinPara
         FinPara
         para f = 1 hasta 4 Con Paso 1
            para c = 1 hasta 7 Con Paso 1
               si matriz1[f , c] > menor1 Entonces
                  menor1 = matriz1[f, c]
               FinSi
            FinPara
         FinPara
         Escribir 'El paeje de mayor congestion es: ',f , ' con', mayor1, ' vehiculos procesados';
         Escribir 'El paeje de menor congestion es: ',c , ' con', menor1, ' vehiculos procesados';
         Escribir ' ';
FinAlgoritmo
En línea

Locura_23

Desconectado Desconectado

Mensajes: 162



Ver Perfil
Re: Ayuda PSEINT
« Respuesta #3 en: 14 Agosto 2023, 05:29 am »

Los errores que te muestran son porque definiste matriz1 como un entero, aquí en esta parte:

   Definir posicion1, mayor1, menor1, posicion2, Respuesta_menu, matriz,matriz1, vector1, vector2,vector3, vector4, f, c Como entero;

Luego, aquí estas intentando utilizar matriz1 como una matriz (para los valores de referencia del menor y el mayor eso está bien), pero aún no la definiste como matriz, o como un arreglo (como te dice el error), sino como un entero (lo de arriba).

   mayor1=matriz1[1,1]
   menor1=matriz1[1,1]

Más abajo ahí recién definiste a matriz1 como una matriz, aquí:

         Escribir "D   L   M   K   J   V   S  Peaje/dia";
         Dimension matriz1[4,7], vector3[7], vector4[7];

En resumen, estás queriendo utilizar la variable matriz1 como una matriz pero aún no la definiste como matriz.

Prueba haciendo esto: definir todo junto las variables enteras y la matriz y vectores arriba del todo, antes de cualquier bucle y demás.

   Definir posicion1, mayor1, menor1, posicion2, Respuesta_menu, f, c Como entero;
   Dimension matriz1[4,7], vector3[7], vector4[7];

* Como nota aparte diria que pienses si realmente necesitas todas esas variables y el uso que le das a cada una, mientras menos sean mejor porque va a ser código más compacto y legible, además sabrás bien qué hace cada una.

« Última modificación: 14 Agosto 2023, 05:36 am por Locura_23 » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pseint, Ayuda :C
Programación General
Caroline.z3 1 6,067 Último mensaje 18 Diciembre 2010, 03:43 am
por Littlehorse
pequeña ayuda plz(pseint)
Programación General
Fire.Soul 0 2,456 Último mensaje 17 Mayo 2013, 22:28 pm
por Fire.Soul
[pseint] Ayuda - Cifrado César
Programación General
shadowzgz 4 12,124 Último mensaje 24 Diciembre 2014, 01:32 am
por Eleкtro
Ayuda en pseint!!
Scripting
stR_ruBen 0 4,433 Último mensaje 8 Febrero 2017, 20:53 pm
por stR_ruBen
Ayuda Pseint algoritmo
Programación General
dariend13 0 3,012 Último mensaje 11 Junio 2017, 01:28 am
por dariend13
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines