col Type mismatch línea 1 3A Type mismatch c$ + j línea 2

Documentos relacionados
Nombre y Apellidos: Especialidad y Grupo:

col Type mismatch cadena vacía fila 1 z + i 4 1 fila 2

FUNDAMENTOS DE INFORMÁTICA

1. (1 punto) Dado el siguiente fragmento en Java:

Fundamentos de Programación

GLOSARIO DE MICROSOFT VISUAL BASIC (HAZ CLIC EN LA OPCION DEL MENU Y ACCEDERAS RAPIDAMENTE)

Fundamentos de Informática Examen 18 de Septiembre de 2006 Mecánica y Electricidad

Manual de turbo pascal

LABORATORIO DE PROCESADORES DE LENGUAJE Curso: Práctica 2: Analizador léxico/sintáctico/semántico con Flex y Bison

Apunte Laboratorio ALPI - El lenguaje de programación Pascal

Introducción a PL/SQL

El objetivo de este ejemplo es cargar 2 arrays aleatoriamente con Random y después mostrar la suma de esos arrays en un nuevo array.

Esquemas repetitivos en Fortran 90. Esquemas repetitivos en Fortran 90. Esquemas repetitivos en Fortran 90. Tipos de Esquema

Programación I. Ingeniería Técnica Informática. Ejercicios de los Temas 4, 5, 6 y 7

Esquemas repetitivos en Fortran 90

1. (1 punto) Dado el siguiente fragmento de programa:

Repaso Visual Basic Interfaz Gráfica

FUNDAMENTOS DE INFORMÁTICA

U nidad 6: A rreglos: U nidim ensionales y m ultidim ensionales

3. Estructuras iterativas. 1.2 Análisis: For. 1.1 Problemas iterativos. Fundamentos de Informática Dpto. Lenguajes y Sistemas Informáticos

GENERACIÓN DE CÓDIGO ORIENTADO A OBJETOS

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

III. Generación de Código orientado a objetos

Índice general. Capítulo 1 Conceptos básicos. Capítulo 2 Controles básicos I. Pág. N. 1

Curso Completo de Visual Basic 6.0

Traductor Morse búcles, strings y arrays

Capítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

n de un Diagrama de Flujo

Módulo. = Asignación = = Comp. de igualdad!= Com. de desigualdad <= Comp. menor o igual >= Comp. mayor o igual AND lógico OR lógica.

Trabajo Práctico 5 Estructura Repetitiva

Maribel Martínez y Ginés Ciudad-Real Fichas para mejorar la atención MATRIZ DE LETRAS

Introducción a C# y la plataforma.net. Pablo Zaidenvoren 2013

1. ESTRUCTURA DE UN PROGRAMA PASCAL Todo programa escrito en lenguaje Pascal, del más simple al más complejo, tiene la siguiente estructura:

FUNDAMENTOS DE OBJECT PASCAL

Sentencias DO-WHILE EN C++

Estos argumentos posicionales trabajan con todos los datos que hay en la dirección especificada hasta que se encuentran con una celda vacía

6. Vectores Fundamentos de Informática

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

PARTE 3: CONCEPTOS BÁSICOS DE PROGRAMACIÓN: QBASIC

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

(71.56) Programación. Diagrama

Estructuras de Control

ELEMENTOS BÁSICOS PARA LA PROGRAMACIÓN DE FUNCIONES TIPOS DE DATOS. Constantes

PHP: Lenguaje de programación

ALGORÍTMICA. Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid.

Tema 3. Estructuras de Datos

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

GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo:

Introducción a C# y la plataforma.net

1. Para los siguientes ejercicios haga una prueba de escritorio de los fragmentos de código y responda las preguntas cuál es la salida?

Introducción al Lenguaje de Programación Ada

JavaScript Básico. Elementos Básicos: Comentarios: Literales: Valores que puede tomar una variable o una constante.

6. Vectores. 1. Introducción. 2. Declaración (I) Fundamentos de Informática Dpto. Lenguajes y Sistemas Informáticos.

Introducción a PL/SQL

1. (0,25 puntos) A que número binario es equivalente el decimal 138?

EXAMENES RESUELTOS DE PROGRAMACION I

FUNDAMENTOS DE INFORMÁTICA

1. Suma de dos números introducidos por teclado. 2. Comparación de dos números introducidos por teclado. program suma; uses crt;

Programación Estructurada

Tema 2. El lenguaje JAVA

VISUAL BASIC Archivos en Visual Basic Proyectos Archivos

Programación MATLAB: Programas y Funciones.

COMO SE PROGRAMA EN VISUAL FOXPRO

Calidad del Software. Ejercicios Tema 4 Conceptos de pruebas

Introducción a C# y la plataforma.net. Pablo Zaidenvoren 2010

Programación MATLAB: Programas y Funciones.

TEST. 2 En el PC de prácticas. Puede haber varios procesos en el mismo instante de tiempo?

Parte 4: Estructuras de Control

Funciones en Visual Basic

crear con python Materiales de inicio a la programacion con codigo Ejercicios practicos con soluciones

Cómo nombrar variables ( 2&

UNIDAD V: ARR R EGL G OS O BIDI D MENS N IONALE L S

COLEGIO PABLO DE TARSO IED CONSTRUCCION DE PROYECTOS DE VIDA PRODUCTIVOS VISUAL BASIC PRÁCTICAS DOC RAUL MONROY PAMPLONA

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

EJERCICIOS MANEJO DE ESTRUCTURAS BÁSICAS SCRIPTS

PRÁCTICA 1: Introducción a Matlab

5. Subprogramas Fundamentos de Informática

Sentencias o instrucciones en Visual BASIC

Hoja de ejercicios del Tema 3

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN

TRABAJO DE EXCEL 1. QUÉ ES UNA FÓRMULA EN EXCEL?

LECCIÓN 6 1. INTRODUCCIÓN. 2. EL LIBRO DE TRABAJO: LIBRO6.XLSM. L e c c i ó n 6 V B A E X C E L E m i l i o R e y e s Página 47

Algoritmos y Programación Clase 8

ESTRUCTURA SECUENCIAL ESTRUCTURA SELECTIVA

WHILE Y DO WHILE BREAK EN LENGUAJE C. BUCLES MIENTRAS. FORZAR SALIDA O TERMINACIÓN. EJEMPLO (CU00534F)

LENGUAJES DE PROGRAMACIÓN. Solución al examen de Junio 2016, Primera Semana

Informática. JavaScript: Lenguaje de programación. Fco J. Martín Mateos Carmen Graciani

Procesamiento de Lenguajes (PL) Curso 2015/2016. Práctica 5: traductor a código m2r

SENA Distrito Capital Centro de Electricidad, Electrónica y Telecomunicaciones ADSI - Ing. Espec. Javier Vaquiro

- Vectors y Matrius: Tots els elements són del mateix tipus i estan consecutius a memòria. Accés a l element de la 5ª fila i 6ª columna.

Unidad II. Fundamentos de programación en Java. Ing. José Luis Llamas Cárdenas

Universidad de Valladolid. Departamento de informática. Campus de Segovia. Estructura de datos Tema 1: Recursividad. Prof. Montserrat Serrano Montero

Introducción a la programación: Algoritmos

Programación con Visual Basic 6

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

INTRODUCIR FORMULAS EN EXCEL

INDICE Parte 1. Visual Basic Capitulo 1. Qué es Visual Basic? Capitulo 22. Mi Primera Aplicación Capitulo 3. Elementos del lenguaje

Estructuras de control

Ejercicios Tema 6. Funciones

5. Sentencias selectivas o condicionales

Transcripción:

Nombre y Apellidos: Especialidad y Grupo: FUNDAMENTOS DE INFORMÁTICA 6-septiembre-2002 CUESTIÓN de Estructuras repetitivas y alternativas (2 puntos) 1. Suponiendo que el usuario teclea los datos 1, 2, 3, indicar y explicar los valores o los errores que se van a visualizar en cada línea de la pantalla tras la ejecución del programa ABC.bas. Tener en cuenta que las variables en este programa no han sido declaradas con la sentencia DIM. Programa ABC.bas INPUT "Teclea valores para a, b, c: ", a$, b$, c$ i = 0 j = 7 DO i = i + 1 a$ + b$, a + b, a$ + b c$ + A, c$ + i, c$ + j j = j - 2 LOOP WHILE i <= 2 OR j > 5 Para i = 1 y j = 7 col 1 2 1 5 9 ------------------------------------------------- 12 0 Type mismatch línea 1 3A Type mismatch c$ + j línea 2 Como el resultado de evaluar las condiciones (1 <= 2 OR 5 > 5) es verdadero, se repite el bucle DO... LOOP... Para i = 2 y j = 5 La resultados que se obtienen para las líneas 3 y 4 son los mismos que para las líneas 1 y 2. Como el resultado de evaluar las condiciones (2 <= 2 OR 3 > 5) sigue siendo verdadero, se vuelve a repetir el bucle DO... LOOP... Para i = 3 y j = 3 La resultados que se obtienen para las líneas 5 y 6 son los mismos que para las líneas 1 y 2. Como el resultado de evaluar las condiciones (3 <= 2 OR 3 > 5) es falso, pues ambas son falsas, se termina la ejecución del bucle. El error Type mismatch se origina en dos ocasiones debido a que se está intentando realizar la operación + entre dos operandos de diferente tipo. Por ejemplo, en la primera a$ es alfanumérico y b es numérico. Así pues, esta operación + no es la suma entre dos operandos numéricos ni la concatenación entre dos operandos alfanuméricos. 1

PROGRAMA de Estructuras alternativas y repetitivas (2 puntos) 2. Escribir un programa en QB cuya ejecución obtenga como salida en pantalla: ABCDEFGHIJKLMNÑOPQRSTUVWXYZ BCDEFGHIJKLMNÑOPQRSTUVWXY CDEFGHIJKLMNÑOPQRSTUVWX DEFGHIJKLMNÑOPQRSTUVW EFGHIJKLMNÑOPQRSTUV FGHIJKLMNÑOPQRSTU GHIJKLMNÑOPQRST HIJKLMNÑOPQRS IJKLMNÑOPQR JKLMNÑOPQ KLMNÑOP LMNÑO MNÑ Codificar dicho programa con las siguientes condiciones: No utilizar las funciones MID$, RIGHT$, LEFT$. En su lugar usar las funciones relacionadas con los caracteres y códigos ASCII. La tabla ASCII correspondiente a las letras mayúsculas A,..., Z y Ñ es: A 65 E 69 I 73 M 77 Q 81 U 85 Y 89 B 66 F 70 J 74 N 78 R 82 V 86 Z 90 C 67 G 71 K 75 O 79 S 83 W 87 D 68 H 72 L 76 P 80 T 84 X 88 Ñ 165 'Programa ABECEDA.bas DIM i AS INTEGER, j AS INTEGER FOR i = 1 TO 13 FOR j = 64 + i TO 91 I CHR$(j); IF b = 78 THEN CHR$(165); 2

PROGRAMA de Arrays y Registros (4 puntos) 3. Codificar un programa en QB para completar una matriz cuadrada y comprobar que se ha hecho de forma correcta mediante la suma de los elementos por filas y por columnas. Para este programa se dispone de los siguientes arrays: Tabla dinámica, llamada matriz, de n x n elementos de tipo numérico. Lista dinámica, llamada vectorfilas, de n elementos de tipo numérico. Cada elemento contiene la suma de cada elemento en cada fila de la tabla anterior. Lista dinámica, llamada vectorcolumnas, de n elementos de tipo numérico. Cada elemento contiene la suma de cada elemento en cada columna de la tabla anterior. matriz 6 filas x 6 columnas vectorfilas 0 1 2 3 4 5 15 1 0 3 4 5 1 14 2 3 0 7 8 9 19 3 4 7 0 15 6 35 4 5 8 15 0 5 37 5 1 9 6 5 0 26 15 14 29 35 37 26 156 vectorcolumnas Para la confección de este programa se deben seguir los siguientes pasos: Teclear una dimensión cualquiera n. Suponer que este dato va a ser correcto. Declarar ahora la tabla y las dos listas dinámicas. Cargar primero la parte triangular superior de la tabla matriz, utilizando el formato de pantalla que quieras. En el caso de nuestro ejemplo, un array 6x6, se corresponde con los números en negrita. Copiar los datos de la parte triangular superior de la matriz cuadrada en la parte triangular inferior. Esta copia se debe efectuar tal como se indica en el ejemplo para un array 6x6, no se deben volver a introducir. Calcular los elementos de la lista vectorfilas. Calcular los elementos de la lista vectorcolumnas. Hallar la suma de los elementos de cada lista, comprobando que el resultado final es el mismo. REM Carga y comprobación de los datos REM numéricos en una matriz cuadrada n. REM CLS INPUT "Teclear la dimensión: ", n DIM matriz(1 TO n, 1 TO n) AS INTEGER DIM vectorfilas(1 TO n) AS INTEGER DIM vectorcolumnas(1 TO n) AS INTEGER DIM sumafilas AS INTEGER DIM sumacolumnas AS INTEGER 3

'Carga de la parte triangular superior FOR i = 1 TO (n 1) FOR j = i + 1 TO n "Elemento ("; i; ","; j; ")"; INPUT ": ", matriz(i, j) 'Carga de la parte triangular inferior FOR i = 2 TO n FOR j = 1 TO i - 1 matriz(i, j) = matriz(j, i) 'Suma de los elementos de cada fila FOR i = 1 TO n FOR j = 1 TO n vectorfilas(i) = vectorfilas(i) + matriz(i, j) sumafilas = sumafilas + vectorfilas(i) 'Suma de los elementos de cada columna FOR j = 1 TO n FOR i = 1 TO n vectorcolumnas(j) = vectorcolumnas(j) + matriz(i, j) sumacolumnas = sumacolumnas + vectorcolumnas(j) 'Visualización del resultado IF sumafilas = sumacolumnas THEN "El resultado es: ", sumafilas 4

PROGRAMA de Funciones y Procedimientos (2 puntos) 4. Teniendo en cuenta las siguientes especificaciones: Programa Principal Teclear una cadena, que puede incluir tanto caracteres numéricos como alfanuméricos. Cadena: _ Llamar al procedimiento separarcadenas, cuyo argumento de entrada es la cadena introducida antes. Visualizar las dos cadenas que devuelve el procedimiento. Procedimiento separarcadenas El prototipo es el siguiente: separarcadenas (cade AS STRING, cadpar AS STRING, cadimpar AS STRING) A partir de la cadena tecleada en el programa principal se trata de obtener dos cadenas diferentes, en función de que el código ASII de cada carácter sea par o impar. Por ejemplo, si la cadena entrante es: El día 8 de diciembre del 2001 Silvia de Gijón batió el record Guines de botes perforados en 1 minuto con un tirachinas. Entonces las dos cadenas salientes son: l d 8 d dbr dl 200 lv d jón btó l rrd n d bt prfrd n nt n n trhn. Eíaeiciemee1SiiaeGiaieecoGuieseoeseoaose1miuocouiacias Se pide: a. Codificar en lenguaje QB solamente el procedimiento separarcadenas. b. Transformar el procedimiento anterior en la(s) función(/es) necesaria(s). REM Programa para separar una cadena en dos, REM en función de que su código ASCII sea REM par o impar. REM DECLARE SUB separarcadenas (cade AS STRING, cadpar AS STRING, cadimpar AS STRING) DIM cadenae AS STRING DIM cadenas1 AS STRING DIM cadenas2 AS STRING CLS INPUT "Cadena: ", cadenae CALL separarcadenas(cadenae, cadenas1, cadenas2) cadenas1 cadenas2 SUB separarcadenas (cade AS STRING, cadpar AS STRING, cadimpar AS STRING) DIM i AS INTEGER DIM car AS STRING * 1 FOR i = 1 TO LEN(cadE) car = MID$(cadE, i, 1) IF ASC(car) MOD 2 = 0 THEN cadpar = cadpar + car ELSE cadimpar = cadimpar + car END SUB 5