Sunteți pe pagina 1din 4

ASIGNATURA: HERRAMIENTAS Y LENGUAJES

COMPUTACIONALES

Escribe y ejecuta los siguientes programas en JAVA:


El programa ms corto posible (no hace nada). Cuntos caracteres contiene?
CDIGO:
public class Nada{
public static void main (String arg[]){
}
}

Este programa tiene 52 caracteres.

Un programa que despliegue el mensaje: \Hola, mundo. (Incluyendo la diagonal


invertida y las comillas).
CDIGO:
import javax.swing.*;
public class HolaMundo{
public static void main (String arg[]){
JOptionPane.showMessageDialog(null,"\" \\ Hola Mundo \"");
}
}

Un programa que despliegue el mensaje \Hola, mundo. (Incluyendo la diagonal


invertida y las comillas) 30 veces.
CDIGO:
public class HolaMundo{
public static void main (String arg[]){
int i;
for(i=0; i<30; i++){
System.out.println("\" \\ Hola Mundo \"");
}
}
}

Disea el algoritmo, y luego desarrolla y ejecuta el programa en JAVA para


calcular el factorial de un nmero n.
ALGORITMO EN PSEUDOCDIGO:
Inicio
Variables: n, fact=1, i.
Imprimir: Ingresa un nmero
Leer n
DESDE i=1 HASTA i<=n CON INCREMENTO +1
fact=fact*i
FIN_DESDE_HASTA
Imprimir: n,!= , fact
Fin
CDIGO:
import javax.swing.*;
public class Factorial{
public static void main(String args[]){
int n;
long fact=1;
n=Integer.parseInt(JOptionPane.showInputDialog("Ingresa un numero: "));
for(int i=1; i<=n; i++){
fact=fact*i;
}
JOptionPane.showMessageDialog(null,n+"!= "+fact);
}
}

Disea el algoritmo, y luego desarrolla y ejecuta el programa en JAVA para


calcular la siguiente suma, dado un nmero n.
PSEUDOCDIGO:
Inicio
Variables: numero, j, fact=1, suma=1.
Imprimir: Ingresa un nmero
Leer n
DESDE j=1 HASTA j<=numero CON INCREMENTO +1
fact=fact*j
suma=suma+(1/fact)
FIN_DESDE_HASTA

Imprimir: 1+(1/1!)++(1/,numero+!)= , suma


Fin

CDIGO:
import javax.swing.*;
public class FactorialSumatoria{
public static void main(String args[]){
float numero, j;
float fact=1, suma=1;
numero=Integer.parseInt(JOptionPane.showInputDialog("Ingresa un numero:
"));
for(j=1; j<=numero; j++){
fact=fact*j;
suma=suma+(1/fact);
}
JOptionPane.showMessageDialog(null,"1+(1/1!)+...+(1/"+numero+"!)="+suma);
}
}

Disea el algoritmo, y luego desarrolla y ejecuta el programa en JAVA para


factorizar un nmero entero.
PSEUDOCDIGO:
Inicio
Variables: d=2, r, n.
Leer n
MIENTRAS n>1 HACER
r=n%d
SI r==0 ENTONCES
Imprimir d
n=n/d
FIN_SI
SI r!=0 ENTONCES
d=d+1
FIN_SI
FIN_MIENTRAS
Fin
CDIGO:
import javax.swing.*;
public class FactorDeUnNumero{
public static void main(String args[]){
int n, d=2, r, m, contador;
String Resultado="";

n=Integer.parseInt(JOptionPane.showInputDialog("Ingresa un numero entero


positivo: "));
m=n;
while(n>1){
contador=0;
while((n%d)==0){
++contador;
n/=d;
}
if(contador>0){
Resultado=Resultado+""+("("+d+"^"+contador+")");
}
d++;
}
JOptionPane.showMessageDialog(null,"Los factores de "+m+"
son:\n"+Resultado);
}
}

Cambia la codificacin en JAVA del programa anterior y esta vez utiliza long para
los enteros. Ve si se produce alguna diferencia cuando se factorizan nmeros
grandes. Comenta por qu hubo o por qu no hubo diferencias.
CDIGO:
import javax.swing.*;
public class FactorDeUnNumero{
public static void main(String args[]){
long n, d=2, r, m, contador;
String Resultado="";
n=Integer.parseInt(JOptionPane.showInputDialog("Ingresa un numero entero
positivo: "));
m=n;
while(n>1){
contador=0;
while((n%d)==0){
++contador;
n/=d;
}
if(contador>0){
Resultado=Resultado+""+("("+d+"^"+contador+")");
}
d++;
}
JOptionPane.showMessageDialog(null,"Los factores de "+m+"
son:\n"+Resultado);
}
}

Al cambiar las variables de tipo int a long en este programa, no afecta en nada la
ejecucin cuando se utilizan nmeros grandes, o sea que la diferencia en nula pues tanto
int como long usan 32 bits, as que son equivalentes y no hay diferencia.

S-ar putea să vă placă și