Ejercicios ejemplos con if then else y operador mod en Visual Basic. Par o impar, ecuación de segundo grado, etc. (CU00324A)



Documentos relacionados
Select Case Visual Basic. Palabras clave To, Is. Instrucción Según (Caso) Hacer. Ejemplos y ejercicios resueltos (CU00325A)

Ejercicios ejemplos resueltos Visual Basic con Labels, Textbox, y Buttons (Command Buttons) (CU00322A)

Ejemplos de uso de forms, labels, inputbox y msgbox en Visual Basic. (CU00332A)

Visual Basic y.net Do Loop, Exit Do, Exit For y GoTo. Ejemplos y ejercicios resueltos. (CU00337A)

Ubound y Lbound en Visual Basic. Conocer índice superior e inferior de arrays (arreglos) Ejemplos y ejercicios. (CU00343A)

Bucles For Next Step, Do While Loop, Do Loop While (Estructuras de repetición en Visual Basic) (CU00326A)

Ejercicios resueltos ejemplo de leer datos desde ficheros con Visual Basic, variables, bucles For Next y condicionales If.

Ejemplos Visual Basic: función Val, arrays de controles, generar números aleatorios, ficheros de texto. (CU00333A)

EJERCICIOS RESUELTOS EN C CON IF THEN ELSE. PAR O IMPAR. ECUACIÓN CUADRÁTICA. PARADOJAS. (CU00530F)

Ejercicios resueltos Visual Basic y.net con arrays (arreglos), Do While, For, mod, ficheros, Ubound. Cálculo serie numérica (CU00344A)

Pruebas (test) de programas. Verificación de algoritmos en Visual Basic. Cómo recargar formularios VB y.net (CU00348A)

Ejemplos ejercicios resueltos Visual Basic. Arrays estáticos, uso de constantes vbyes, vbno y MsgBox. (CU00334A-1)

Visual Basic: paso de parámetros por referencia ByRef y por valor ByVal. Procedimientos y funciones. (CU00341A)

Captura y gestión de errores. Instrucción on error. Objeto Err, Err.Number y Err.Description. Método clear en Visual Basic.

Indice del curso básico programación desde cero Visual Basic Nivel I (CU00302A)

Declaración de variables (integer, single, double, boolean, etc.) en Visual Basic. Dim. Ejemplos. (CU00309A)

Arrays dinámicos y arrays estáticos con Visual Basic y.net. Redim, Redim Preserve, Erase. Ejemplos (CU00342A)

Abstracción, código y verificación del programa ejercicio algoritmo de ordenación resuelto con Visual Basic. (CU00358A)

Buttons (Command Buttons) en Visual Basic. Propiedades y ejemplos. Código asociado a eventos. (CU00321A)

Visual Basic: procedimientos Sub y funciones Function. Tipos de parámetros y tipos de retorno. Ejemplos (CU00340A)

EJERCICIOS BÁSICOS DE PROGRAMACIÓN EN C RESUELTOS. VARIABLES, PRINTF, SCANF, CÁLCULOS. (CU00527F)

UNIVERSIDAD LIBRE DE COLOMBIA ELECTIVA IV VISUAL BASIC GUIA No. 1

aprenderaprogramar.com Sección: Cursos Categoría: Curso Visual Basic Nivel I Fecha revisión: 2029 Autor: Mario R. Rancel

Arrays unidimensionales. Dim.Option Base. Erase. Ejemplos en Visual Basic (CU00311A)

Tipos de errores en Visual Basic: de compilación, de ejecución, de sintaxis. Depuración. (CU00352A)

Ejercicio ejemplo resuelto de uso de arrays (arreglos) dinámicos en pseudocódigo I (CU00214A)

Uso de centinelas para la toma de decisiones. Esquemas y diagramas de flujo. Ejemplos resueltos. (CU00167A)

Microsoft Visual Basic

EJERCICIOS DE PROGRAMACIÓN EN C. DIBUJAR UN ROMBO O DIAMANTE. CALCULAR SUMATORIOS. (CU00542F)

Capítulo E l ope r ad or r e s id uo E x pr e s ion e s b oole an as

EJEMPLO DE CÓDIGO JAVA BÁSICO. CREAR CLASES CON CAMPOS, CONSTRUCTOR Y MÉTODOS. LA PALABRA CLAVE THIS (CU00652B)

INFORMATICA VISUAL BASIC 2008

CONDICIONALES EN PHP: IF ELSE, IF ELSE IF. CONDICIONAL TERNARIO. EJEMPLOS DE USO Y EJERCICIOS RESUELTOS. (CU00817B)

Estructuras de control. Secuencial, condicional y repetitivas.

Visual Basic y.net: Procedimientos Sub y funciones Function. Parámetros. Organizar programas en módulos. (CU00338A)

Introducción a las sentencias de control

Ejemplo de programa básico en Visual Basic. Option Explicit, Form, Dim, String, etc. (CU00310A)

UNIVERSIDAD NACIONAL DE INGENIERIA

LABORATORIO 4. Escribir el CÓDIGO y la INTERFAZ GRÁFICA (cuando proceda) de los correspondientes casos prácticos.

Como se declara un vector en Visual Basic 6.0

GENERAR NÚMEROS O SECUENCIAS ALEATORIOS EN C. SRAND Y RAND. TIME NULL. RAND_MAX. (CU00525F)

EJERCICIOS RESUELTOS. EJEMPLOS CON NÚMEROS ALEATORIOS EN JAVA. RANDOM NEXTINT, NEXTDOUBLE, ETC. (CU00909C)

Programación de los problemas de Física en.

Práctica 6 Operaciones aritméticas, lógicas y relacionales

OPERADORES LÓGICOS JAVASCRIPT. EJEMPLOS. RELACIONALES MAYOR, MENOR, IGUAL, DISTINTO. AND, OR, NOT. CORTO- CIRCUITO (CU01117E)

TIPOS DE BUCLES O CICLOS DE REPETICIÓN EN PHP: WHILE, DO WHILE Y FOR. EJEMPLOS Y EJERCICIOS RESUELTOS. (CU00822B)

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA VISUAL BASIC ASICO JAIME RUBIANO LLORENTE

LA CLASE ARRAYLIST DEL API DE JAVA. MÉTODOS ADD, SIZE, ETC. CONCEPTO DE CLASE GENÉRICA O PARAMETRIZADA (CU00665B)

FUNDAMENTOS DE INFORMÁTICA

PROYECTO JUEGO DE 7 Y MEDIO

UNIVERSIDAD LIBRE DE COLOMBIA FACULTAD INGENIERIA DE SISTEMAS ELECTIVA TECNICA II.NET Y SQL SERVER

Motivación. 4: Control de flujo Condicionales. Motivación. Condicionales

Clase adicional 2. Estructuras básicas de control. Temas

PROYECTO JUEGO DE 7 Y MEDIO

Ecuaciones. 3º de ESO

MsgBox en ASP.NET. En esta oportunidad, vamos a realizar un control que permite emular dicha función sobre ASP.NET.

1. Introducción a la programación. Ej01: Diagrama de Flujo

Operadores lógicos y matemáticos en Visual Basic. Math. Comentarios en VB. Rem. Ejemplos. (CU00314A)

Estructuras de control condicionales

ECUACIONES E INECUACIONES

GENERAR NÚMEROS ALEATORIOS EN JAVA. CLASE RANDOM Y MÉTODO NEXTINT. EJERCICIO EJEMPLO RESUELTO. (CU00672B)

Diagramas de Flujo Programación Estructurada. Diagramas de Flujo y Pseudocódigo

QUÉ ES JAVASCRIPT? PRINCIPALES USOS. SERVIDOR Y CLIENTE. HTML, CSS Y PROGRAMACIÓN. EFECTOS DINÁMICOS (CU01103E)

CONFIGURACIÓN BÁSICA DE NOTEPAD++. AUTOCOMPLETAR Y OTRAS VENTAJAS DE NOTEPAD++. (CU00709B)

Introducción Programación Modular y a Métodos: Consideremos el siguiente ejercicio:

MATRICES Y ARRAYS (ARREGLOS) MULTIDIMENSIONALES EN PHP. EJERCICIOS RESUELTOS. EJEMPLOS (CU00824B)

descripción del argumento identificador tipo longitud condición restricción

Polinomios. 1.- Funciones cuadráticas

Programa de números aleatorios

EJERCICIOS RESUELTOS DE INECUACIONES. Juan Jesús Pascual. Inecuaciones

Algoritmos y Programación Clase 8

Sumador con comprobación (1)

PROCESAR DATOS DE UN FORMULARIO HTML EN PHP CON $_POST. EJERCICIOS RESUELTOS Y EJEMPLOS. (CU00834B)

Label. (Etiqueta). Permite poner texto en un formulario. TextBox. (Caja de Texto). Permite la captura y

La ayuda y referencia de Visual Basic y otros recursos como herramientas para los programadores. (CU00306A)

Capítulo 1. Algoritmos, diagramas de flujo y programas.

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA VISUAL BASIC BASICO JAIME RUBIANO LLORENTE

3. Estructuras iterativas

MATRICES, ARREGLOS O ARRAYS DE ELEMENTOS GRÁFICOS EN JAVA. EJEMPLO CON JLABEL Y JTEXTFIELD. (CU00930C)

Etapas para la solución de un problema por medio del computador

Ejercicio ejemplo resuelto: verificar el algoritmo de resolución de una ecuación de segundo grado. (CU00237A)

Fundamentos de Programación

CONFIGURACIÓN BÁSICA DE NOTEPAD++ PARA CREAR PÁGINAS PHP. ALGUNAS VENTAJAS DE ESTE EDITOR COMO SUS EXTENSIONES O PLUGINS.

Gestión y organización de artículos Clasificación en secciones, categorías y subcategorías Joomla. Ejemplos. (CU00422A)

CLASE 11 USO DE CONDICIONALES Y VECTORES

Práctica N 04. Programación Visual.NET II. 1. CREACIÓN DE FORMULARIO PARA CONSULTA DE EMPLEADOS(FrmConEmpleados.vb)

DIAGRAMAS DE FLUJOS. Qué son Los Diagramas de Flujo y Para qué se Usan?

AJAX: EJEMPLOS EFECTOS Y USO EN DESARROLLOS WEB CON HTML, CSS, JAVASCRIPT VENTAJAS E INCONVENIENTES (CU01205F)

En esta sección se describen las variables, constantes, tipos de datos, operadores y estructuras de control

Módulos Joomla Flash noticias de actualidad, contenido más leído o más popular y artículos archivados. (CU00433A)

Open, Close, Freefile. Write# y Input#. Abrir y cerrar ficheros con Visual Basic. Leer y guardar datos. Ejemplos prácticos.

Fundamentos de Informática Laboratorio: Funciones

Expresión, Operador, Operando, Asignación, Prioridad

Prof. Dr. Paul Bustamante

Resolver ecuaciones de segundo grado con WIRIS

Operadores lógicos y de comparación en programación. Not, and, or Ejemplos. (CU00132A)

Sentencias DO-WHILE EN C++

Capítulo 3. Prueba de escritorio 1: l a P S Salida por pantalla 1. Prueba de escritorio 2: l a P S Salida por pantalla 2 35

Ecuación de la Recta

Transcripción:

aprenderaprogramar.com Ejercicios ejemplos con if then else y operador mod en Visual Basic. Par o impar, ecuación de segundo grado, etc. (CU00324A) Sección: Cursos Categoría: Curso Visual Basic Nivel I Fecha revisión: 2029 Autor: Mario R. Rancel Resumen: Entrega nº23 del Curso Visual Basic Nivel I 29

EJERCICIO EJEMPLO CON IF THEN ELSE EN VISUAL BASIC Crear un programa que pida un número entero distinto de cero y nos muestre en pantalla un mensaje indicándonos si el número es par o impar. Nota: El procedimiento a emplear será basado en el uso del operador Mod. SOLUCIÓN Crearemos un Label de solicitud del número, un Textbox de entrada, un Button (Command Button en las versiones menos recientes de Visual Basic) y un Label para el cálculo y el resultado. Le ponemos los nombres y organizamos los controles en pantalla como nos parezca correcto (no tiene por qué coincidir con lo que ponemos aquí). Los nombres que hemos empleado nosotros son: LabelPideNum, TextNentero, ButtonHallar y LabelResultado. Código (versiones menos recientes VB): Dim Num As Integer Dim Res As Integer Form1.Caption = "Determina naturaleza par o impar" ButtonHallar.Caption = "Determinar" LabelPideNum = "Introduzca un nº entero" Private Sub ButtonHallar_Click() Num = Val(TextNentero) Res = Num Mod 2 LabelResultado.FontSize = 10 LabelResultado.FontBold = True If Res = 0 Then LabelResultado = "El número es par" LabelResultado = "El número es impar" Código (versiones más recientes VB): On Dim Num As Integer Dim Res As Integer Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Text = "Determina naturaleza par o impar" ButtonHallar.Text = "Determinar" LabelPideNum.Text = "Introduzca un nº entero" Private Sub ButtonHallar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonHallar.Click Num = Val(TextNentero.Text) Res = Num Mod 2 LabelResultado.Font = New Font("Arial", 10, FontStyle.Bold) If Res = 0 Then LabelResultado.Text = "El número es par" LabelResultado.Text = "El número es impar" Gráficamente: Hemos escrito el If... Then como un bloque en vez de como una única línea. El motivo para ello es que aporta mayor claridad y facilidad de interpretación.

EJERCICIO ECUACIÓN DE SEGUNDO GRADO (ECUACIÓN CUADRÁTICA) Crear un programa que resuelva la ecuación cuadrática tipo ax 2 + bx + c. El planteamiento del problema y su solución en forma de pseudocódigo se pueden encontrar en el curso Bases de la programación nivel I de aprenderaprogramar.com, dentro de los ejercicios relacionados con condicionales. Una vez creado el programa, hay que contrastar su correcto funcionamiento. SOLUCIÓN Usaremos tres Labels para pedir los parámetros a, b y c denominados Labela, Labelb y Labelc, y tres TextBox para que el usuario introduzca datos (Texta, Textb y Textc) además de un botón (ButtonCalcular). Nosotros hemos añadido además un mensaje de cabecera con un label (LabelTitulo). Mostraremos primero el código para versiones de Visual Basic más recientes y luego para versiones menos recientes. Ten en cuenta que la lógica de los programas es en ambos casos igual, lo único que varía son los detalles de la sintaxis. CÓDIGO (PARA VERSIONES DE VISUAL BASIC MÁS RECIENTES) On REM Declaración de variables Dim anumber, bnumber, cnumber, dnumber, enumber As Single REM Contenido del formulario Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Text = "Ecuación cuadrática" ButtonCalcular.Text = "Calcular x" LabelTítulo.Text = "Parámetros a, b y c para ecuación tipo a*x^2 + b*x + c = 0" REM Cálculo y muestra de resultados Private Sub ButtonHallar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCalcular.Click LabelResultado.Font = New Font("Arial", 10, FontStyle.Bold) anumber = Val(Texta.Text) bnumber = Val(Textb.Text) cnumber = Val(Textc.Text) dnumber = bnumber ^ 2-4 * anumber * cnumber enumber = 2 * anumber If dnumber = 0 Then LabelResultado.Text = "x1 = x2 = " & -bnumber / enumber If dnumber > 0 Then LabelResultado.Text = "x1 = " & (-bnumber + Math.Sqrt(dNumber)) / enumber LabelResultado.Text = LabelResultado.Text & vbcrlf & "x2 = " & (-bnumber - Math.Sqrt(dNumber)) / enumber LabelResultado.Text = "x1 = " & -bnumber / enumber & " + " & Math.Sqrt(-dNumber) / enumber & " * " & Math.Sqrt(-dNumber) / enumber & " * i"

Nota: en versiones recientes de Visual Basic algunas letras están reservadas y no pueden ser usadas como nombres de variables. Por ejemplo la letra e. De ahí que en vez de nombrar a las variables como a, b, c, d, e las hayamos nombrado anumber, bnumber, cnumber, dnumber y enumber. CÓDIGO (PARA VERSIONES DE VISUAL BASIC MENOS RECIENTES) Rem Declaración de variables Dim a!, b!, c!, d!, e As Single Rem Contenido del formulario Form1.Caption = "Ecuación cuadrática" CommandCalcular.Caption = "Calcular x" LabelTítulo = "Parámetros a, b y c para ecuación tipo a*x^2 + b*x + c = 0" Labela.Caption = "Valor parámetro a" Labelb.Caption = "Valor parámetro b" Labelc.Caption = "Valor parámetro c" Rem Cálculo y muestra de resultados Private Sub CommandCalcular_Click() LabelResultado.FontSize = 10 LabelResultado.FontBold = True a = Val(Texta) b = Val(Textb) c = Val(Textc) d = b ^ 2-4 * a * c e = 2 * a If d = 0 Then LabelResultado = "x1 = x2 = " & - b / e If d > 0 Then LabelResultado = "x1 = " & (-b + Sqr(d)) / e LabelResultado = LabelResultado & vbcrlf & "x2 = " & (-b - Sqr(d)) / e LabelResultado = "x1 = " & -b / e & " + " & Sqr(-d) / e & " * i" LabelResultado = LabelResultado & vbcrlf & "x2 = " & -b / e & " - " & Sqr(-d) / e & " * i" COMENTARIOS El programa (ambas versiones de código) "funciona", si bien tiene sus limitaciones. Prueba a introducir los siguientes datos: a = 0, b = 3 y c = 1. Te aparecerán resultados extraños (o un error como "Error 6 en tiempo de ejecución. Desbordamiento"). El motivo para esos resultados extraños o errores es que si a = 0 implica que e = 0 y al encontrarnos con una operación del tipo ( b + Sqr(d)) / e donde el denominador vale cero... operación matemática no permitida! Esto ocurrirá mientras no preparemos el programa para detectar este tipo de situaciones y darles un tratamiento adecuado, cosa que veremos más adelante.

Estamos construyendo programas sencillos que en líneas generales responden bien cuando se dan las circunstancias previstas pero que fallan ante situaciones extrañas. Esto no debe preocuparnos por el momento, ya que a medida que progresemos como programadores iremos construyendo programas cada vez más sólidos. Aspecto gráfico: EJEMPLOS CON IF THEN ELSE EN VISUAL BASIC: PARADOJA DEL SI BURLADO POR UN INTERVALO Reflexiona sobre el significado y prueba los siguientes códigos en tu ordenador: Código 1 (versiones menos recientes de VB): Dim A% If 50 < A < 75 Then MsgBox ("Arabia") MsgBox ("Eusebio") Código 1 (versiones más recientes de VB): On Dim A As Integer Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If 50 < A < 75 Then MsgBox("Arabia") MsgBox("Eusebio")

Código 2 (versiones menos recientes de VB): Dim A% If A > 50 And A < 75 Then MsgBox ("Arabia") MsgBox ("Eusebio") Código 2 (versiones más recientes de VB): On Dim A As Integer Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If A > 50 And A < 75 Then MsgBox("Arabia") MsgBox("Eusebio") Si bien podría esperarse obtener el mismo resultado con ambos códigos, al ejecutar el código 1 obtenemos como resultado que se muestre en pantalla "Arabia", mientras que al ejecutar el código 2 se muestra "Eusebio". La razón: Visual Basic no admite comparaciones dobles del tipo x < y < z. Ante este tipo de escritura, sólo es evaluada la primera condición de las dos pretendidas. Solución? No usar comparaciones dobles. Este resultado inesperado puede ocasionar un buen quebradero de cabeza, ya que en un programa extenso no será nada fácil detectar este error. Como remedio, usaremos siempre la escritura de condiciones una detrás de otra y no de forma múltiple. Próxima entrega: CU00325A Acceso al curso completo en aprenderaprogramar.com -- > Cursos, o en la dirección siguiente: http://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=37&itemid=61