Documente Academic
Documente Profesional
Documente Cultură
Ingeniería Eléctrica
Computación Científica I
Trabajo Práctico N° 2
La estructura de datos que sirve para almacenar estas grandes secuencias de números
(generalmente de tipo float) es el arreglo.
en general, el tamaño del arreglo es fijo (no van creciendo dinámicamente como las
listas),
A la vez, los arreglos tienen muchas ventajas por sobre las listas, que iremos descubriendo a
medida que avancemos en la materia.
Los arreglos son los equivalentes en programación de las matrices y vectores de las
matemáticas. Precisamente, una gran motivación para usar arreglos es que hay mucha teoría
detrás de ellos que puede ser usada en el diseño de algoritmos para resolver problemas
verdaderamente interesantes.
Igualdad:
El operador de igualdad estricta compara el valor y el tipo de dos expresiones; devuelve true
sólo si las dos expresiones se comparan como iguales con el operador de igualdad, y el tipo de
datos es el mismo para los dos operando.
Operadores de asignación:
x += y x=x+y
x -= y x=x-y
x *= y x=x*y
x /= y x=x/y
x %= y x=x%y
x <<= y x = x << y
x >>= y x = x >> y
x >>>= y x = x >>> y
x &= y x=x&y
x ^= y x=x^y
x |= y x=x|y
La técnica de diseño de algoritmos llamada "divide y vencerás" (divide and conquer) consiste
en descomponer el problema original en varios sub-problemas más sencillos, para luego
resolver éstos mediante un cálculo sencillo. Por último, se combinan los resultados de cada
sub-problema para obtener la solución del problema original. El pseudocódigo sería:
funcion divide_y_venceras_1(problema)
{
resolver el subproblema k;
e- ¿Cómo se le llama a una variable que se conoce sólo dentro de la función en la que
está declarada?
Como vimos anteriormente C tiene como bloque básico la función main() , también hemos
visto la sentencia printf() que es otra función, y de igual forma hay muchas más funciones
predefinidas, pero nosotros mismos también podemos definir nuestras propias funciones. De
hecho, es fundamental hacerlo.
Podemos definir una función cualquiera de la misma manera en que definimos la función
main(). Basta con poner su tipo, su nombre, sus argumentos entre paréntesis y luego, entre
llaves, su código:
La sentencia return puede utilizarse dentro de una función para terminar su ejecución.
En el ejemplo anterior, la función holamundo fue declarada con valor de retorno de tipo void
(es decir, valor de retorno nulo). En ese caso, la sentencia return no lleva ningún parámetro
adicional, ya que la función no debe devolver ningún valor a la función que la llama.
En cambio, la función main tiene un valor de retorno de tipo int, por lo que return debe ir
seguido de un valor entero (0 en el ejemplo). El valor 0 se utiliza para indicar que el programa
ha llegado a un punto en el que todo se ha desarrollado correctamente y se utiliza cualquier
otro valor para indicar que ha habido algún tipo de error.
La instrucción return no es una función, se trata de una sentencia que lo que hace es retornar
como valor de la función el valor que se le proporciona como argumento.
2. Encuentre el error en cada uno de los siguientes segmentos de programa y corrija el error
#define SIZE
b) SIZE = 10
SIZE = 10;
b[ i ] = 1;
b[ i ] = 1;
d) #include <stdio.h>;
#include <stdio.h>
a[ 1, 1 ] = 5;
a[ 1, 1 ] = 1;
/* if(x%2==0)
par= par + x;
printf ("%d", x);
else
impar = impar + x
printf ("%d", x);
para ver si es par o impar*/
/*printf ("ingrese el maximo valor a calcular");
scanf ("%d", &n);*/
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
#include <windows.h>
main()
{
int suma=0, i;
for (i=1 ; i<=1000 ; i++)
suma = suma + i;
printf ("la suma de los numeros a 1000/n", i);
}
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
main()
{
int x,n;
int par=0;
int impar=0;
printf("Ingrese el valor a deducir la sumatoria de pares e
impares: ");
scanf("%d",&n);
for(x=0; x<=n; x++)
if(x%2==0) {
par=par+x;
printf("%d \n",x);}
else {
impar=impar+x;
printf("%d ",x);}
printf("\nNumeros pares %d\n",par);
printf("Numeros impares %d",impar);
getch();
}
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
main()
{
int x;
int par=0;
for(x=2; x<100; ++(x=x+1)){
par= par+x;
printf("%d ",x);
}
printf("\nLa suma de los numeros del 1 al 100 es:
%d\n",par);
getch();
}
6. Calcular la nota media de los alumnos de una clase considerando n-número de alumnos y
c-número de notas de cada alumno.
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>
#include <time.h>
#include <windows.h>
main()
{
float nota,suma, media,promedio;
int i, x, alumn, notas;
printf("\n\nIngrese numero de alumnos: ");
scanf("%d",&alumn);
printf("\n\nIngrese el numero de notas: ");
scanf("%d",¬as);
for(i=1; i<=alumn; i++){
system("cls");
printf("\n\nEl alumno %d: ",i);
for(x=1; x<=notas; x++){
printf("\n\nIngrese la nota %d: ",x);
scanf("%f",¬a);
suma= suma+nota;
promedio=suma/notas;}}
printf("\nCantidad de alumnos: %d",alumn);
printf("\nSuma total de las notas %0.1f",suma);
media=promedio/alumn;
printf("\nLa nota media es: %0.1f",media);
getch();
}
#include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<time.h>
#include<math.h>
#define n 100
main()
{
int Nro[n];
int j,i;
getch ();
}