INGENIERÍA
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
TAREA DE PROGRAMACION
PROFESOR:
Arturo Vilca
ESPECIALIDAD:
Ingeniería Electrónica
INTEGRANTES:
2017
PROBLEMA 01:
1. Análisis
Tenemos que crear las siguientes variables para el programa:
Rombo
+dmayor:double
+dmenor:double
+angulo=90:double
+Rombo()
+Rombo(dmayor:double,dmenor:double)
-eDmayor(dmayor:double)=void
+lDmayor():double
-eDmemor(dmenor:double)=void
+lDmenor():double
-eAngulo(angulo:double)=void
+lAngulo():doublé
+lado():double
+area():double
+perimetro():double
Cuadrado
+dmayor:double
+dmenor:double
+angulo=90:double
+Cuadrado()
+Cuadrado(diagonal:double)
-eDiagonal(dmayor:double)=void
+lDiagonal():double
-eAngulo(angulo:double)=void
+lAngulo():doublé
+lado():double
+area():double
+perimetro():double
3. Codificacion:
/* Programa : Paralelogramo
* Autor : HUAMÁN GUIA, Paul Jhefry
* Codigo : 20162536H
* Sección: " O "
*/
Clase Paraleogramo:
public Paralelogramo(){
/* Programa : Paralelogramo
* Autor : HUAMÁN GUIA, Paul Jhefry
* Codigo : 20162536H
* Sección: " O "
*/
public Rombo(){
@Override
public double area(){
return super.area();
}
@Override
public double perimetro(){
return 4*lado();
}
}
Clase Cuadrado:
/* Programa : Paralelogramo
* Autor : HUAMÁN GUIA, Paul Jhefry
* Codigo : 20162536H
* Sección: " O "
*/
public class Cuadrado extends Rombo{
public Cuadrado(){
}
public Cuadrado(double diagonal){
dmayor=diagonal;
dmenor=diagonal;
angulo=90;
}
@Override
public double lado(){
double a=Math.sqrt(Math.pow(dmayor/2,
2)+Math.pow(dmenor/2, 2));
return a;
}
@Override
public double area(){
return lado()*lado();
}
@Override
public double perimetro(){
return 4*lado();
}
}
4. Pruebas:
/* Programa : Paralelogramo
* Autor : HUAMÁN GUIA, Paul Jhefry
* Codigo : 20162536H
* Sección: " O "
*/
}
}
PROBLEMA 02:
1. Análisis
Para el problema necesitamos 5 metodos:
ingresoLlamadas en la cual ingresa un numero y los
minutos llamados.(esos dos datos se almacenan en 2
arreglos respectivamente).
calculoMinTotal en la cual halla los minutos
realizados a todos los números llamados.
calculoMinCel en la cual halla los minutos
realizados a un cierto numero.
calculoLlamadas en la cual halla la cantidad de
veces llamadas a un cierto numero.
Procedimiento en la cual nos dan los datos del
SIM.
Variables usadas en mi clase:
Dos arreglos para almacenar los números y los minutos
respectivamente de cada llamada.
Un crédito inicial.
El numero SIM(numero principal).
2. Diagrama UML
SIM
Numero:int
int[] lista=new int[10000]
int[] min=new int[10000]
crédito:double;
int m=0
+SIM()
+SIM(int numero, double credito)
+getNumero(numero:int)
+getCredito(credito:double):double
-setNumero(numero:int)=void
-setCredito(crédito:double)=void
-ingresoLlamadas(numerox:int,minx:int)
+calculoMinTotal():void
+calculoMinCel(numeroy:int):int
+calculoLlamadas(numeroy:int):int
-procedimiento():void
3. Codificacion:
public class SIM{
private int numero;
//creo arreglo muy grande para almacenar los numeros
// ya que no sabemos cuantos numeros llamaran
private int[] lista=new int[10000];
private int[] min=new int[10000];
private double credito;
private int m=0;
public SIM(){
credito=credito-minx*0.20;
lista[m]=numerox;
min[m]=minx;
m++;
return n;
}
return n;
}
public void procedimiento(){
int[] lista1=new int[m];
int[] min1=new int[m];
int i;
//
System.out.println("Datos de la SIM: ");
System.out.println("Su numero SIM es "+getNumero());
System.out.println("Su credito final es "+getCredito());
for(i=0;i<lista1.length;i++){
lista1[i]=lista[i];
}
for(i=0;i<min1.length;i++){
min1[i]=min[i];
}
4. Pruebas:
import java.util.Scanner;
int n = entrada.nextInt();
}
}
5. Observacion:
No pasar del crédito entregado.
PROBLEMA 03:
6. Análisis
Para el problema nos piden 2 métodos de la clase
ManejarMatriz;
Para el método verificarDiagonales:
Creamos una variable boolean para el true y false
(asi sabremos si es verdad o falso).(tipo boolean
)
Una matriz con un análisis con un contador(ya que
la igualdad de elementos depende del orden la
matriz), es decir la igualdad será n-1. Donde n es
el orden de la matriz.(matriz tipo int[][],cont=0)
Para el método extraerArreglo:
Primero calculamos la cantidad de elementos que
cumplen la condición.(arreglo tipo int )
Luego almacenamos los elementos en el arreglo
Retornamos el arreglo.
7. Diagrama UML
ManejarMatriz
+ Matriz:int[][]
+ x:int
- ManejarMatriz()
+ verificarDiagonales(matriz:int[][])
+ extraerArreglo(matriz:int[][]),x:int)
8. Codificación:
/* Programa : Matriz
* Autor : HUAMÁN GUIA, Paul Jhefry
* Codigo : 20162536H
* Sección: " O "
*/
public class ManejarMatriz{
private int[][] matriz;
private int x;
public ManejarMatriz(){
return Arreglo;
}
9. Prueba.
Para matriz que cumple y no cumple.