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

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Pasar a c
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Pasar a c  (Leído 3,829 veces)
Dumy

Desconectado Desconectado

Mensajes: 25


Ver Perfil
Pasar a c
« en: 27 Octubre 2023, 20:31 pm »

Hola

Estoy intentando codifixar a a C este pseudocodigo, ¿Alguien puede indicarme algunos conceptos como cadena?, no estoy seguro a si se refiere a array

Código:
var
                        num, divisor1, divisor2, divisor3: entero;
            fvar

            num := leerEntero( );

            mientras  (num ≠ -1) hacer    
                        buscadivisor1(num, divisor1, divisor2,divisor3);  

                        si loEs(num, divisor1, divisor2,divisor3)  entonces
                                          printaExito(num, divisor1, divisor2,divisor3

                        sino
                                          printaFracaso(num);

                         fsi  

                         num := leerEntero( );

            fmientras


       falgoritmo
 

      accion printaExito( ent a: entero, ent b: entero, ent c: entero, ent d: entero )


                  escribirCadena(‘El número: ‘);
                  escribirEntero(a);

                  escribirCadena(‘ es igual a  ‘);

                  escribirEntero(b);

                  escribirCadena(‘ multiplicado por  ‘);

                  escribirEntero(c);  

                  escribirCadena(‘ y por ‘);

                  escribirEntero(d);  

            fsi        

      faccion


      accion printaFracaso(ent a: entero)
            escribirCadena(‘El número: ‘);
            escribirEntero(a);
            escribirCadena(‘ no tiene divisores diferentes de 1 que multiplicados sean igual a el. ‘);
      faccion

      funcion loEs(ent x: entero,ent y:entero,ent z: entero, ent w: entero): booleano;

                        retorna x = (y * z * w);            
      ffuncion

      accion buscadivisor1(ent n: entero, sal d1: entero, sal d2: entero, sal d3: entero )
            var

                   encontrado: booleano;
            fvar

            encontrado:=falso;

            d1:=2;

            d2:=2;

            d3:=2;

            mientras  d1<=(n div 2) y no encontrado  hacer
                  buscadivisor2 (n,d1,d2,d3);
                  encontrado:= loEs (n,d1,d2,d3);

                   si   no encontrado  entonces

                           d1:=d1+1;

                   fsi  
            fmientras
      faccion
 
      accion buscadivisor2( ent num: entero, ent d1: entero, sal d2: entero, sal d3: entero  )

            var

                   encontrado: booleano;
            fvar

            encontrado:=falso;

            d2:=2;

            d3:=2;

            mientras  d2 <= (num div 2) y no encontrado  hacer
                  buscadivisor3(num,d1,d2,d3);  

                 encontrado:= loEs (num,d1,d2,d3);
                  si no encontrado  entonces
                        d2:=d2+1;
                  fsi      
            fmientras
      faccion

      accion buscadivisor3( ent num: entero, ent d1: entero, sal d2: entero, sal d3: entero  )

            var

                   encontrado: booleano;
            fvar

            encontrado:=falso;

            d3:=2;

            mientras  d3 <= (num div 2) y no encontrado  hacer

                 encontrado:= loEs (num,d1,d2,d3);
                  si no encontrado  entonces
                        d3:=d3+1;
                  fsi      
            fmientras
      faccion
¿Por otro lado alguien sabe de algun codificador a C?


« Última modificación: 16 Noviembre 2023, 08:12 am por fary » En línea

.xAk.


Desconectado Desconectado

Mensajes: 397


F0r3v3R NeWbI3


Ver Perfil WWW
Re: Pasar a c
« Respuesta #1 en: 10 Diciembre 2023, 00:58 am »

Estoy intentando codifixar a a C este pseudocodigo

bien, estoy seguro que ya tienes el nombre de archivo y me gustaría ver cómo lo inicias.


, ¿Alguien puede indicarme algunos conceptos como cadena?, no estoy seguro a si se refiere a array

puedes verlo así, se trata de un carácter (8 bits), y uno al lado de otro hacen la cadena que llamas array.

¿Por otro lado alguien sabe de algun codificador a C?

¿perdón? puedes explicarlo un poco mejor.

Muestranos tus progresos.


En línea


Atika

Desconectado Desconectado

Mensajes: 6


Ver Perfil
Re: Pasar a c
« Respuesta #2 en: 11 Diciembre 2023, 23:04 pm »

Creo que esto es lo más parecido a lo que tu quieres en C:

Código
  1. #include <stdio.h>
  2. #include <stdbool.h>
  3.  
  4. void printaExito(int a, int b, int c, int d) {
  5.    printf("El número: %d es igual a %d multiplicado por %d y por %d\n", a, b, c, d);
  6. }
  7.  
  8. void printaFracaso(int a) {
  9.    printf("El número: %d no tiene divisores diferentes de 1 que multiplicados sean igual a él.\n", a);
  10. }
  11.  
  12. bool loEs(int x, int y, int z, int w) {
  13.    return x == (y * z * w);
  14. }
  15.  
  16. void buscadivisor1(int n, int *d1, int *d2, int *d3) {
  17.    bool encontrado = false;
  18.    *d1 = 2;
  19.    *d2 = 2;
  20.    *d3 = 2;
  21.  
  22.    while (*d1 <= (n / 2) && !encontrado) {
  23.        // Lógica para buscadivisor2
  24.        encontrado = loEs(n, *d1, *d2, *d3);
  25.  
  26.        if (!encontrado) {
  27.            (*d1)++;
  28.        }
  29.    }
  30. }
  31.  
  32. void buscadivisor2(int num, int d1, int *d2, int *d3) {
  33.    bool encontrado = false;
  34.    *d2 = 2;
  35.    *d3 = 2;
  36.  
  37.    while (*d2 <= (num / 2) && !encontrado) {
  38.        // Lógica para buscadivisor3
  39.        encontrado = loEs(num, d1, *d2, *d3);
  40.  
  41.        if (!encontrado) {
  42.            (*d2)++;
  43.        }
  44.    }
  45. }
  46.  
  47. void buscadivisor3(int num, int d1, int d2, int *d3) {
  48.    bool encontrado = false;
  49.    *d3 = 2;
  50.  
  51.    while (*d3 <= (num / 2) && !encontrado) {
  52.        encontrado = loEs(num, d1, d2, *d3);
  53.  
  54.        if (!encontrado) {
  55.            (*d3)++;
  56.        }
  57.    }
  58. }
  59.  
  60. int main() {
  61.    int num, divisor1, divisor2, divisor3;
  62.  
  63.    printf("Ingrese un número (-1 para salir): ");
  64.    scanf("%d", &num);
  65.  
  66.    while (num != -1) {
  67.        buscadivisor1(num, &divisor1, &divisor2, &divisor3);
  68.  
  69.        if (loEs(num, divisor1, divisor2, divisor3)) {
  70.            printaExito(num, divisor1, divisor2, divisor3);
  71.        } else {
  72.            printaFracaso(num);
  73.        }
  74.  
  75.        printf("Ingrese un número (-1 para salir): ");
  76.        scanf("%d", &num);
  77.    }
  78.  
  79.    return 0;
  80. }

MOD: Etiqueta GeSHi
« Última modificación: 12 Diciembre 2023, 01:07 am por MCKSys Argentina » En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.969


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Pasar a c
« Respuesta #3 en: 12 Diciembre 2023, 13:34 pm »

Atika: por favor no hagas tareas ajenas, maxime cuando el usuario no lo pide ("¿Alguien puede indicarme algunos conceptos como cadena?").

Dumy: https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C/Cadenas_de_caracteres
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
pasar vqf a mp3
Multimedia
Cobac 3 2,808 Último mensaje 24 Septiembre 2004, 05:51 am
por Songoku
Pasar de swf a mpg, avi o wmv
Multimedia
jorge23es 3 2,320 Último mensaje 29 Septiembre 2004, 08:05 am
por Songoku
pasar avi mpg
Multimedia
TRON1 2 2,167 Último mensaje 18 Diciembre 2004, 10:17 am
por Songoku
Pasar avi a dvd ?? xD
Multimedia
no_manzana 1 1,514 Último mensaje 13 Febrero 2006, 07:44 am
por Sourraund
Pasar de C# a C++ CLR.
.NET (C#, VB.NET, ASP)
Meta 0 2,138 Último mensaje 8 Febrero 2016, 13:14 pm
por Meta
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines