You are on page 1of 4

Ayudanta n5 Introduccin a la Programacin Computacin Bsica Uso de Archivos

1.- Lea la notas de un curso desde el archivo notas.txt, el cual contiene: nombrealumno,nota1,nota2,nota3
Genere un archivo salida llamado estado.txt, que contenga nombrealumno,promedio,situacin. Situacin
es aprueba, reprueba o examen.
Ejemplo archivo notas.txt

Miguel
Gmez,4.5,6.2,3.3
Sofa Lpez,3.1,3.4,3.4
Ivn Soto,3.5,3.4,4.5

Ejemplo archivo estado.txt

Miguel
Gmez,4.7,aprueba
Sofa Lpez,3.3,reprueba
Ivn Soto,3.8,examen

2.- Farmacia Itos, tiene un archivo de texto ventas.txt, con las compras hechas por sus clientes. El archivo
trae:
nombrecliente,cantidaddeproductos,producto1,valorproducto1,producto2,valorproducto2..
Muestre por pantalla el monto total de ingresos por las ventas que hizo la farmacia, y cuntos clientes
hicieron compras sobre $10.000. Genere un archivo de salida llamado boleta.txt, que contenga el nombre
del cliente y el monto que pag por su compra. Considere al generar el archivo, que si el cliente compra
ms de $10.000.- se le aplica un descuento de 5%.
Ejemplo archivo ventas.txt

Jos Troncoso,4,jabn,990,shampoo,1990,desodorante,2500,cepillo dientes,3500


Mara Pereira,3,emulsionado,3400,bloqueador,3700,mscara de pestaas,4300
Lorena Alfaro,2,paales,5500,toallitas hmedas,1990
Ejemplo archivo boleta.txt

Jos Troncoso,8980
Mara Pereira,10830
Lorena Alfaro,7490
3.- Mas Market, tiene un archivo de texto llamado ventas.txt, el cual contiene las ventas realizadas. Se
desea saber, cual es el monto que cancela cada cliente (mostrar por pantalla) y que genere un archivo de
salida detalle.txt, que contenga el detalle de los productos de categora, jabn, leche, galletas, indicando
la categora del producto, la cantidad total vendida, y el monto total en dinero.
Ejemplo archivo ventas.txt
Ejemplo archivo detalle.txt

Jorge Perez,5
cecina,san jorge,3400
jabn,dove,1980
queso,coln,2990
carne,lomo
envasado,12990
leche,purita,3990
Camila Pizarro,6
confort,favorita,2430
toalla nova,a
cuenta,980
detergente,rinso,4530
galletas,costa,990
papas fritas,lays,1290
jabn,le sancy,345
Jorge Torres,3
jabn,ballerina,1300
lapicero,340

Jabn,3,3625
Leche,2,6580
Galletas,1,990

Pauta ejercicio 1
import java.io.IOException;
import disc.*;
public class ej01 {
public static void main(String[] args) throws IOException {
ArchivoEntrada arch1 = new ArchivoEntrada ("notas.txt");
ArchivoSalida arch2 = new ArchivoSalida("estado.txt");
double sum;
double prom;
String estado;
while(!arch1.isEndFile()){
Registro datos = arch1.getRegistro();
String nombreAlumno = datos.getString();
sum=0;
for (int i=0; i<3;i++){
double nota = datos.getDouble();
sum+=nota;
}
prom=sum/3;
if(prom<3.4){
estado="reprueba";
}
else{
if(prom>4.0){
estado="aprueba";
}
else{
estado="examen";
}
}
PantallaSalida.println(nombreAlumno+" promedio: "+prom+ ", "+estado);
Registro salida = new Registro(3);
salida.agregarCampo(nombreAlumno);
salida.agregarCampo(prom);
salida.agregarCampo(estado);
arch2.writeRegistro(salida);
}
arch1.close();
arch2.close();
}
}

Pauta Ejercicio 2
import java.io.IOException;
import disc.*;
public class Ej02 {
public static void main(String[] args) throws IOException {
ArchivoEntrada venta = new ArchivoEntrada ("ventas.txt");
ArchivoSalida boleta = new ArchivoSalida("boleta.txt");
double montoFarmacia=0;
int cont10000=0;
while(!venta.isEndFile()){
double montoCliente=0;
Registro linea = venta.getRegistro();
String nombreCliente = linea.getString();
int cantProductos = linea.getInt();
for (int i=0;i<cantProductos;i++){
String producto = linea.getString();
int precio = linea.getInt();
montoCliente+=precio;
}
if(montoCliente>=10000){
cont10000++;
montoCliente=montoCliente*0.95;
}
montoFarmacia+=montoCliente;//lo suma despus del posible descuento
Registro escribe = new Registro(2);
escribe.agregarCampo(nombreCliente);
escribe.agregarCampo(montoCliente);
boleta.writeRegistro(escribe);

}
PantallaSalida.println("El total de ingresos por las ventas que hizo la farmacia fue de
$"+montoFarmacia);
PantallaSalida.println(cont10000+" clientes hicieron compras iguales o mayores a
$10.000.-");
venta.close();
boleta.close();
}
}

Pauta Ejercicio 3
import java.io.IOException;
import disc.*;
public class ej03 {
public static void main(String[] args) throws IOException {
ArchivoEntrada ventaFarmacia = new ArchivoEntrada ("ventas.txt");
ArchivoSalida detalle = new ArchivoSalida("detalle.txt");
int montoJabon=0;
int contJabon=0;
int montoLeche=0;
int contLeche=0;
int montoGalletas=0;
int contGalletas=0;
while(!ventaFarmacia.isEndFile()){
int montoCliente=0;
Registro lineaNombreCantidad = ventaFarmacia.getRegistro();
String nombreCliente = lineaNombreCantidad.getString();
int cantProductos = lineaNombreCantidad.getInt();
for (int i=0;i<cantProductos;i++){
Registro productos=ventaFarmacia.getRegistro();
String producto = productos.getString();
String categoria = productos.getString();
int precio = productos.getInt();
montoCliente+=precio;
if(producto.equals("jabn")){
contJabon++;
montoJabon+=precio;
}
if(producto.equals("leche")){
contLeche++;
montoLeche+=precio;
}
if(producto.equals("galletas")){
contGalletas++;
montoGalletas+=precio;
}
}
PantallaSalida.println(nombreCliente+ " su total a pagar es: "+montoCliente);
}
Registro escribeJabon = new Registro(3);
escribeJabon.agregarCampo("Jabn");
escribeJabon.agregarCampo(contJabon);
escribeJabon.agregarCampo(montoJabon);
detalle.writeRegistro(escribeJabon);
Registro escribeLeche = new Registro(3);
escribeLeche.agregarCampo("Leche");
escribeLeche.agregarCampo(contLeche);
escribeLeche.agregarCampo(montoLeche);
detalle.writeRegistro(escribeLeche);
Registro escribeGalletas = new Registro(3);
escribeGalletas.agregarCampo("Galletas");
escribeGalletas.agregarCampo(contGalletas);
escribeGalletas.agregarCampo(montoGalletas);
detalle.writeRegistro(escribeGalletas);
ventaFarmacia.close();
detalle.close();
}