Lenguaje visual.


                                                       TERCER PARCIAL:


Aplicación N° 1
 En este primer ejercicio  vamos a escribir un programa que lea tres números enteros y determine el numero mayor, el numero central y el numero menor.Devemos asumir que los tres números son siempre distintos .
Para el desarrollo de la prsente aplicasion ingresa a Microsoft visul Foxpro. En la ventana de comandos dijita la siguiente orden:
Close all
Clear
Input “introduzca el valor de A?” To Na
Input “introduzca el valor de B?” To Nb
Input “introduzca el valor de C?” To Nc
If   Na> Nb then
    nMay=Na
    nMen=nb
Else
     nMay=nb
    nMen=na
Endif
If   nc > nMay then
     Ncen=nMay
    nMay=nc
else
if  nc> nMen then
nCen=nc
else
nCen=nMen
nMen=nC
endif
endif
?”mayor=”+str(nmay)
?”Central=”+str(nCen)
?”Menor=”+str(nmen)
Para ejecutar el programa dar click en el boton ejecutar(!) dela barra de herramientas estándar.
Para volver a ejecutar su programa digitar la siguiente orde desde  la ventana de comandos:
Do Aplica01


[Cristina clemente clemente]







Aplicasion N°2
Un restaurante ofrece un descuento del 10% para consumos
Entre $30.00 y $50.00; un descuento del 20% para consumos mayores a $50.oo; para todos los demás caso no se aplica ningún tipo de descuento. El ejercicio consiste en elaborar un programa que permita determinar el importe a pagar por el consumidor.
Para el desarrollo de la presente aplicación ingresa a Microsoft visual Foxpro. En la ventana de comandos digita la siguiente orden:

Close all
Clear
Do while .T.
Input “consume:” To nConsumo
If Type(“nConsumo”)= “N”
Exit
Endif
Endo
Do case
Case nConsumo>=30 And nConsumo <=50
 nImporte=Nconsumo*0.9
case nConsumo>50
nInporte=nConsumo*0.8
otherwise
nImporte=nConsumo
EndCase
?”Importe a pagar:”+str(nImpote)


[Cristina clemente clemente]






Aplicasion N°3
El ejercicio consiste en escribir un programa que lea “n” enteros y calcule la suma total , la media aritmética,el máximo y el minimo de los datos. Para Para el desarrollo de la prsente aplicasion ingresa a Microsoft visul Foxpro. En la ventana de comandos dijita la siguiente orden:

Close all
Clear
Input “ingresa cantidad de números?” To Nn
Declaro aVector(nN)
For ni=1 To Nn
Input”numero[“+str(ni)+”]?”to aVector(ni)
Next
nMax=aVector[1]
nMin=aVector[1]
nSuma=0
For ni=1 to nn
nSuma=nsuma+vector[nI]
if aVector [nI]>nMax Then
nMax=aVector[ni]
endif
if aVector[ni]<nMin Then
nMin=aVector[ni]
endif
next
nMedia=nSuma/Nn
?”suma=”+str(nSuma)
?”media=”+str(nMedia,10,2)
?”Maximo=”+str(nMax)
?”Minimo=”+str(nMin)

[Cristina clemente clemente] 




Aplicasion N°4
Acontinuacion vamos a escribir una fuincion que reciba como argument de entrada una cadena de caracteres y la devuelva en forma inversa,por ejemplo si se ingresa la cadena CORAZON beberá retornar NOZAROC.
Para el desarrollo de la presente aplicación ingresa a Microsoft visual Foxpro. En la ventana de comandos digita la siguiente orden:

Close all
Clear
Accept “ingresa una cadena?” To cCadena
¿”cadena inversa=”+cadinv(cCadena)
Function cadinv

Nn=len _(Alltrim(cCadena))
Declare Ctemporal(nn)
For ni= 1to  nn
CTemporal (ni)=substr(cCadena,ni,1)
Next
cInvertida=””
for Nj=Nn to 1 step -1
cInvertida =cInvertida+cTemporal(nj)
next j
return cInvertida



[Cristina clemente clemente]


                                       Aplicasion  Reloj.
Left = 0
DoCreate = .T.
Caption = "Reloj despertador digital"
MaxButton = .F.
MinButton = .F.
WindowState = 0
BackColor = 128,128,128
Name = "FrmReloj"
      tPROCEDURE Load
Puclic lOnOff
lOnOff=.F.
thisform.txtdespertador.value="00:00:00"
thisform.refresh


ENDPROC
THISFORM
 TXTDESPERTADOR VALUE REFRESH


 Load,   
   label      label      LblHora  
    FrmReloj  
   iCaption = "Hora"
Height = 24
Left = 120
Top = 0
Width = 84
BackColor = 0,128,192
Name = "LblHora"
      label      label      
LblDespertador       FrmReloj      xCaption = "Despertador"
Height = 17
Left = 132
Top = 96
Width = 72
BackColor = 0,128,192
Name = "LblDespertador"
      textbox      textbox      TxtHora       FrmReloj      xFontBold = .T.
FontSize = 24
Height = 48
Left = 204
Top = 24
Width = 144
BackColor = 255,0,128
Name = "TxtHora"
      textbox      textbox      
TxtDespertador      
FrmReloj      €FontBold = .T.
FontSize = 24
Height = 48
Left = 192
Top = 120
Width = 144
BackColor = 255,0,128
Name = "TxtDespertador"
      timer      timer       Timer1       FrmReloj      ATop = 168
Left = 108
Height = 23
Width = 23
Name = "Timer1"
      ÖPROCEDURE Timer
if thisform.txthora.value!=time()then
thisform.txthora.value=time()
endif
if(thisform.txtdespertador.value<time())and loneff then
*sonido acustico
?chr(7)
endif
thisform.refresh

ENDPROC

commandbutton      
commandbutton       CmdOnOff       FrmReloj      lTop = 216
Left = 228
Height = 27
Width = 84
Caption = "\<Desactivar"
Default = .T.
Name = "CmdOnOff"
      ´PROCEDURE Click
if loneff then
loneff=.F.
thisform.cmdonoff.caption="\<Activar"
else
loneff=.T.
thisform.cmdonoff.caption="\<desactivar"
endif
thisform.refresh

ENDPROC
                 \<Activarýþ 
 \<desactivarýþ  
commandbutton      
commandbutton 
CmdTerminar       FrmReloj      kTop = 216
Left = 24
Height = 27
Width = 84
Cancel = .T.
Caption = "\<Terminar"
Name = "CmdTerminar"
      .PROCEDURE Click
release thisform

ENDPROC
vCaption = "Cristina clemente"
Height = 17
Left = 0
Top = 0
Width = 108
BackColor = 128,128,128
Name = "Label1"

   

Aplicasion Edad.

       Name = "Dataenvironment"
        
Left = 0
Height = 296
Width = 491
DoCreate = .T.
Caption = "FrmEdad"
BackColor = 255,128,0
Name = "Form1"
      label      label                lblfecnac      Form1      |Caption = "Fecha de nacimiento"
Height = 24
Left = 216
Top = 48
Width = 132
BackColor = 128,255,0
Name = "lblfecnac"
      label      label      lbledad      Form1      pCaption = "su edad es:"
Height = 24
Left = 252
Top = 168
Width = 96
BackColor = 0,255,0
Name = "lbledad"
      öPROCEDURE Click
set date frenche
sete century on
cNomDia=Cdow(Date())
cDia=stre(Day(date()),2)
cMes=Cmnth(date]())
cAnno=cNomDia+""+cDia+"+cMes+"del"+cAnno
thisform.caption=cfecha
thisform.txtfecNac.setfocus
thisform.refresh

ENDPROC
  
frencheþ ´sete century on

ýþ ´cMes=Cmnth(date]())
, ´cAnno=cNomDia+""+cDia+"+cMes+"del"+cAnno


textbox      textbox  
           txtfecnac    
Form1      jEnabled = .T.
Height = 23
Left = 384
Top = 48
Width = 100
BackColor = 255,255,0
Name = "txtfecnac"
      textbox      textbox      Txtedad      Form1      iEnabled = .F.
Height = 23
Left = 372
Top = 168
Width = 100
BackColor = 255,255,0
Name = "Txtedad"
      
commandbutton      
commandbutton      
cdmaceptar      Form1      [Top = 216
Left = 12
Height = 27
Width = 84
Caption = "\<Aceptar"
Name = "cdmaceptar"
      £PROCEDURE Click

dFecNac=Ctod(thisform.TxtFecNac.Value)
nEdad=int((Date()-dFecnac)/365)
thisform.TxtEdad.value=str(nEdad)+"años"
thisform.refresh


commandbutton      
commandbutton      
cdmlimpiar      Form1      \Top = 216
Left = 120
Height = 27
Width = 84
Caption = "\<Limpiar"
Name = "cdmlimpiar"
      £PROCEDURE Click

dFecNac=Ctod(thisform.TxtFecNac.Value)
nEdad=int((Date()-dFecnac)/365)
thisform.TxtEdad.value=str(nEdad)+"años"
thisform.refresh

  
commandbutton      
commandbutton       cmdsalir      Form1      XTop = 216
Left = 264
Height = 27
Width = 84
Caption = "\<Salir"
Name = "cmdsalir"
      0PROCEDURE Click
release thisform


ENDPROC
  
   label      label       Label1      Form1      mCaption = "Operadores"
Height = 24
Left = 0
Top = 96
Width = 96
BackColor = 255,128,0
Name = "Label1"
      label      label       Label2      Form1      xCaption = "cristina y javier"
Height = 24
Left = 0
Top = 120
Width = 120
BackColor = 128,128,255
Name = "Label2"
      label      label       Label3      Form1      wCaption = "C E T I S  N°   146"
Height = 17
Left = 108
Top = 12
Width = 216
BackColor = 0,0,255
Name = "Label3"


EXAMEN TERCER PARCIAL
#include <stdio.h>
#include<conio.h>
main()
{int cant,diva,reda,dirb,redb,divc,reda,dirc,redd,dive,dird,rode,redc,divd;
printf("el numero final de la cantidad no debe ser diferente a cero");
printf("introducir cantidad a retirar");
scanf("%n",cant);
printf("el numero total de billetes de 200 es %d",diva);
diva=cant/200;
reda=cant%200;
printf("el numero total de billetes de 100 es %d",dirb);
dirb=reda/100;
redb=reda%100;
printf("el numero total de billetes de 50 es %d",dirc);
divc=redb/50;
redc=redb%50;
printf("el numero total de billetes de 20 es %d",dird);
divd=redc/20;
redd=redc%20;
printf("el numero total de billetes de 10 es %d",dive);
dive=redd/10;
rede=redd%10;
getch();
}

Clemente clemente cristina


COMANDOS DE VISUAL FOXPRO.

SET DEFAULT especifica la unidad y el directorio por defecto de la aplicación

Clear: Limpia pantalla

Clear Windows:

Dir: Muestra el contenido de un directorio del disco.


Dir *.*: muestra todo el contenido de un directorio en el disco

Dir *.prg: muestra solo los archivos con extensión prg en el disco

Set talk off/on: Determina si Visual FoxPro muestra o no los resultados de los comandos.

Set Date to <formato>: Especifica el formato para mostrar las expresiones Date y DateTime.

Quit: sirve para salir

Cancel: Finaliza la ejecución del archivo de programa actual de Visual FoxPro.

Open data base: Abre una base de datos.

Close data base: cierra una base de datos.

Use: Abre una tabla y sus archivos de índice asociados, o una vista SQL.

Close Table: cerrar una tabla

Append: Agrega uno o más registros nuevos al final de una tabla.

Append Blank: 

Delete: Marca los registros que se van a eliminar.

Delete All: marca todos los registros y los borra

Delete For:

Delete next 3: borra los 3 siguientes registros.

Recall: Quita la marca de los registros marcados para eliminación en la tabla seleccionada.

Recall all: quita la marca de todos los registros marcados.

Recall for:

Index on: Crea un archivo de índice para mostrar registros de tabla y tener acceso a los mismos en un orden lógico.

Replace: Actualiza los registros de una tabla.

List: Muestra continuamente información de tabla o de entorno.

Browse: Abre la ventana Examinar y muestra los registros de la tabla en uso o seleccionada.

Close All: cierra la base de datos activa y todas sus tablas.

Recall next 3: quita la marca de los siguientes 3 registros marcados.

Pack: Borra definitivamente todos los registros marcados para eliminar de la tabla actual y reduce el tamaño de un archivo memo asociado a la tabla.

Zap: Elimina todos los registros de la tabla actual y deja sólo la estructura de la tabla.

Go: Coloca el puntero de registro en el número de registro especificado de una tabla.

Go3: coloca el puntero de registro 3 posiciones hacia delante

Go top: nos permite trasladar al primer registro de la tabla.

Go bottom: nos permite trasladar al último registro de la tabla.

Skip: Mueve el puntero de registro hacia adelante o hacia atrás en una tabla.

Skip -1: mueve el puntero de registro hacia atrás 1 posición.

Skip 1: mueve el puntero de registro hacia delante una posición.

List stru: 

Modi Stru: Muestra el Diseñador de tablas, que permite modificar la estructura de una tabla.

Modi comn: Abre una ventana de edición de texto y le permite modificar o crear un archivo de programa.

Do: Ejecuta un programa o un procedimiento de Visual FoxPro.


Create: Crea una nueva tabla de Visual FoxPro.


Create 

- Para crear una nueva base de datos, tabla, índice, o consulta almacenada. Una sentencia CREATE en SQL crea un objeto dentro de un sistema de gestión de bases de datos relacionales (RDBMS). Los tipos de objetos que se pueden crear depende del RDBMS que esté siendo utilizado, pero la mayoría soportan la creación de tablas, índices, usuarios, sinónimos y bases de datos. Algunos sistemas (como PostgreSQL ) permiten CREATE, y otros comandos DDL, en el interior de una transacción y por lo tanto puede ser revertido. Otras que se incluyen dentro del DDL, pero que su existencia depende de la implementación del estándar SQL que lleve a cabo el gestor de base de datos son GRANT y REVOKE, los cuales sirven para otorgar permisos o quitarlos, ya sea a usuarios específicos o a un rol creado dentro de la base de datos.

ejemplo:
 Create Table Cliente (Nombre C(10), Apellido C(40), Codigo 
N(10), Fecha_Nac D(8)) 
Esto se utiliza para crearla por código, sino se pueden usar las herramientas 
del modify database. 


Close Databases

 Cerrar las Bases de Datos.
 Con este comando se cierra la base de datos activa o en caso 
contrario todas las que están abiertas, agregando ALL. 
 Close Databases All 
 Close Databases 
ejemplo


CLOSE [ALL | ALTERNATE | DATABASES [ALL] | DEBUGGER | FORMAT | INDEXES
   | PROCEDURE | TABLES [ALL]]

Close all
Cerrar todas las tablas abiertas.
 Cierra todas las áreas de trabajo que tenemos abiertas. 
ejemplo

CLOSE [ALL | ALTERNATE | DATABASES [ALL] | DEBUGGER | FORMAT | INDEXES
   | PROCEDURE | TABLES [ALL]]
Quit
Para finalizar una sesión de Visual FoxPro, debe utilizar siempre el comando QUIT. Si apaga el equipo sin ejecutar QUIT, se pueden dañar los archivos abiertos y perder datos. Además, puede dejar en el disco archivos temporales de trabajo que normalmente se eliminarían.Termina la sesión actual de Visual FoxPro y devuelve el control al sistema operativo.
ejemplo

QUIT


Use
<Tabla> Abrir y utilizar una tabla.
 Al abrir una tabla se le puede indicar parámetros adicionales,


Use Cerrar la tabla actual.
 Cierra la tabla que esta activa en el área de trabajo seleccionada

APPEND 
abre una ventana de edición para que pueda escribir datos en uno o varios registros nuevos. Cuando agregue un nuevo registro, Visual FoxPro actualizará cualquier índice que haya abierto.El cuadro de diálogo Abrir aparece cuando ejecuta APPEND o APPEND BLANK y no hay una tabla abierta en el área de trabajo activa. Elija una tabla para agregar registros.
ejemplo

APPEND [BLANK] [IN nWorkArea | cTableAlias] [NOMENU]


GO y GOTO
pueden utilizarse indistintamente. Estos comandos actúan sobre la tabla del área de trabajo actual a menos que especifique otra área de trabajo con la cláusula IN.

Ejemplo

CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'data\testdata')
USE products  && Opens Products table
USE customer IN 0  && Opens Customer table
GO BOTTOM IN products
CLEAR
? RECNO('products')
GO TOP
? RECNO( )     && Displays 1
GO 5
? RECNO( )     && Displays 5


BROWSE 
Impide que el puntero de registro se desplace desde su posición actual hasta la parte superior de la tabla cuando se abra una ventana Examinar con la cláusula FOR. De lo contrario, BROWSE situará el puntero de registro al principio de la tabla de forma predeterminada.

ejemplo
BROWSE [FIELDS FieldList] [FONT cFontName [, nFontSize]] 
   [STYLE cFontStyle] [FOR lExpression1 [REST]] [FORMAT] 
   [FREEZE FieldName] [KEY eExpression1 [, eExpression2]] [LAST | NOINIT]
   [LOCK nNumberOfFields] [LPARTITION] [NAME ObjectName] [NOAPPEND]
   [NOCAPTIONS] [NODELETE] [NOEDIT | NOMODIFY] [NOLGRID] [NORGRID] 
   [NOLINK] [NOMENU] [NOOPTIMIZE] [NOREFRESH] [NORMAL] [NOWAIT] 
   [PARTITION nColumnNumber [LEDIT] [REDIT]]
   [PREFERENCE PreferenceName] [SAVE] [TIMEOUT nSeconds] 
   [TITLE cTitleText] [VALID [:F] lExpression2 [ERROR cMessageText]]
   [WHEN lExpression3] [WIDTH nFieldWidth] [WINDOW WindowName1]
   [IN [WINDOW] WindowName2 | IN SCREEN] [COLOR SCHEME nSchemeNumber]


Modify Structure 
Editar la estructura de la tabla actual.
 Para poder ejecutar este comando la tabla tiene que estar en forma 
exclusiva. Al ejecutarla aparece la siguiente pantalla.
ejemplo
DISPLAY STRUCTURE [IN nWorkArea | cTableAlias]
   [TO PRINTER [PROMPT] | TO FILE FileName] [NOCONSOLE]


LIST
muestra toda la informacion de la base de datos (muestra todos los registros

 DISPLAY
Especifica que solamente se muestran los registros que satisfacen la condición lógica lExpression1. Esto permite filtrar los registros no deseados.
Rushmore optimiza una consulta creada con DISPLAY ... FOR si lExpression1 es una expresión optimizable. Para obtener el máximo rendimiento, utilice una expresión optimizable en la cláusula FOR.
ejemplo
DISPLAY [[FIELDS] FieldList] [Scope] [FOR lExpression1] 
   [WHILE lExpression2] [OFF] [NOCONSOLE] [NOOPTIMIZE] 
   [TO PRINTER [PROMPT] | TO FILE FileName]

MODIFY COMMAND
Especifica el nombre del archivo para el programa que se va a abrir o crear. Si no especifica una extensión para un nuevo archivo de programa, Visual FoxPro asigna automáticamente la extensión .prg. MODIFY COMMAND admite una estructura de archivo que contenga los caracteres comodín asterisco (*) e interrogación (?). Se abrirá una ventana de edición de texto para cada programa cuyo nombre coincida con la estructura de archivos.
Si omite el nombre del archivo, aparecerá una ventana de edición de texto para un archivo que inicialmente se llama Prog1.prg. Cuando cierre la ventana de edición de texto podrá guardar el archivo con un nombre diferente.
EJEMPLO
MODIFY COMMAND [FileName | ?] [NOEDIT] [NOMENU] [NOWAIT]
   [RANGE nStartCharacter, nEndCharacter] [[WINDOW WindowName1]
   [IN [WINDOW] WindowName2 | IN SCREEN]] [AS nCodePage] [SAME]
   [SAVE]
Delete
Marca los registros que se van a eliminar.
ejemplo
DELETE [Scope] [FOR lExpression1] [WHILE lExpression2]
   [IN nWorkArea | cTableAlias] [NOOPTIMIZE]
report form
Especifica el nombre del archivo de definición de informe que se va a imprimir. En esta versión de Visual FoxPro también se notifica este parámetro al cuadro de diálogo Cola de impresión.
ejemplo
REPORT FORM FileName1 | ? [ENVIRONMENT] [Scope] [FOR lExpression1]
   [WHILE lExpression2] [HEADING cHeadingText] [NOCONSOLE]
   [NOOPTIMIZE] [PLAIN] [RANGE nStartPage [, nEndPage]]
   [PREVIEW [[IN] WINDOW WindowName | IN SCREEN] [NOWAIT]]
   [TO PRINTER [PROMPT] | TO FILE FileName2 [ASCII]] [NAME ObjectName]
   [SUMMARY]

No hay comentarios:

Publicar un comentario