Did you know that you can navigate the posts by swiping left and right?

Primera experiencia en C con GLIB. Problema 3 (Project Euler)

29 Jul 2012 . category: . Comments

Si bien ya he probado GLib anteriormente, creo que lo hice casi a ciedas y muy apresuradamente: empezando con él en un proyecto real. Luego de unos meses, he decidido hacer experimentos con problemas que solía programar en Python de Project Euler. No sé si la solución que mostraré a continuación sea la mejor, pero más que nada quiero mostrar cómo usé GLib.

La solución (6857):

/*
 * PROBLEMA 3  (HECHO)
 * The prime factors of 13195 are 5, 7, 13 and 29.
 * What is the largest prime factor of the number 600851475143 ?
*/

#include <stdio.h>
#include <glib.h>

gboolean primo (gint64 numero) {
	
	gint64 j;
	gboolean is_primo;
	
	if (numero != 2) {
		is_primo = TRUE;
		j = 2;
		while ((j < numero) && (is_primo)) {
			if (numero % j == 0) {
				is_primo = TRUE;
			}
			j++;
		}
	}
	else {
		is_primo = TRUE;
	}
	return is_primo;	
	
}

void main(void) {
	gboolean is_primo, is_factor;
	gint64 numero, i, mayor;
	i = 2;
	numero = 600851475143;
	mayor = i;
	while (i  2) {
					if (i > mayor) {
						mayor = i;
					}
				}
			}
		}

		i++;
	}
	printf("%llu\n", mayor);

}


Me

Fabián Orccón is an awesome person. He lives in Perú, the land of the Incas.