Escritura de programas en C

Download Report

Transcript Escritura de programas en C

Escritura de programas en C
Programación Básica
Partes de un programa en C
Un programa en C debe tener al menos las siguientes partes:
Inclusión de bibliotecas de entrada y salida
Función main
A su vez la función main debe incluir
Encabezado
Bloque de sentencias puede estar vacío
Programa HolaMundo.cpp
/*Primer programa en C */
/*biblioteca para entrada y salida*/
#include <iostream>
/*necesario para usar la biblioteca*/
using namespace std;
int main()/*aquí inicia el programa */
{
/*sentencia de salida*/
cout << "Hola mundo!.\n";
/*terminación normal del programa*/
return 0;
}/*fin del programa*/
Otro ejemplo
/*Ejemplo de varias sentencias cout una sola
línea de salida */
#include <iostream> /*biblioteca para
entrada y salida*/
using namespace std;
int main(){
cout << "Esta es una";
cout << " cadena impresa ";
cout << "en una sola línea\n";
return 0;
}
Otro ejemplo más
/*Ejemplo de cout, una sentencia varias
líneas*/
#include <iostream>
using namespace std;
int main(){
cout <<"Línea 1\nEsta es la línea 2\ny
está es la 3\n";
return 0;
}
Uso del tabulador
/*Ejemplo de uso del tabulador*/
#include <iostream>
using namespace std;
int main(){
cout << "nombre\tdirección\tteléfono\n";
cout << "juan\tolmo 204 \t8-12-12-34\n";
cout << "maria\tpino 565 \t8-34-27-16\n";
return 0;
}
Entrada desde el teclado
Para la entrada de datos se utiliza la función cin de la biblioteca
iostream.
La sintaxis de cin es:
cin >> variable1 >> variable2 ...;
Cuando se ejecuta la sentencia cin se suspende la ejecución del
programa hasta que se introduzcan las variables de la sentencia.
Las variables deben separarse con espacios o alimentos de línea.
Siempre que se va a leer un valor es muy importante exhibir un
letrero que informe al usuario qué es lo que se va a leer, de no
hacerlo así, no se sabría que está ocurriendo.
Ejemplo de lectura
#include <iostream>
using namespace std;
int main(){
int divisor, dividendo, cociente;
cout << "Teclee el dividendo: ";
cin >> dividendo;
/*Lee el dividendo*/
cout<<"Teclee el divisor: ";/*informa que se va a leer*/
cin >> divisor;
/*Lee El divisor */
cociente = dividendo / divisor;
cout << "dividendo: " << dividendo << endl;
cout << "divisor: " << divisor << endl;
cout << "cociente: " << cociente << endl;
return 0;
}
Área de un triángulo
Veamos un programa para calcular el área de un triángulo, dadas
las coordenadas de sus vértices.
El área se calcula utilizando la siguiente fórmula:
1
area  x1 y2  x2 y3  x3 y1  x1 y3  x2 y1  x3 y2 
2
Cuidado al traducir la sentencia a C. si pone
1/2*(x1*y2+x2*y3+x3y1-x1y3-x2y1-x3y2)
El 1/2 se evaluará como 0 ya que la división se efectúa como
división de enteros y 1 entre 2 es 0.
Debe poner 0.5 o 1.0/2.0 o algo equivalente.
int main()
{
float x1,x2,x3,y1,y2,y3;
float area;
// coordenadas del triángulo
// área del triángulo
cout << "Teclee las coordenadas del primer punto: ";
cin >> x1 >> y1;
cout << "Teclee las coordenadas del segundo punto: ";
cin >> x2 >> y2;
cout << "Teclee las coordenadas del tercer punto: ";
cin >> x3 >> y3;
area = (x1*y2+x2*y3+x3*y1-x1*y3-x2*y1-x3*y2)/2.0;
cout << "área: " << area << endl;
return 0;
}
Prueba del programa
Probaremos con un triángulo de área conocida.
Supongamos las siguientes coordenadas: (0, 0), (1,0), (1,1), el
área debe ser 0.5.
Actividad
Escriba un programa para calcular la magnitud de la fuerza
entre dos cargas eléctricas dadas las coordenadas de las cargas
y la magnitud de cada carga.
La fuerza se calcula con la expresión siguiente donde k = 8.99
x109.
F k
q1q2
x2  x1 2   y2  y1 2
Probar el programa con q1 = 1.0 x 10–5 C , q2 = 1.0 x 10–5 C
x1 = 0, y1 = 0, x2 = 1.0 y y2 = 1.0
Fuerza = 0.4495
Biblioteca matemática math.h
La biblioteca math.h contiene las declaraciones de las funciones
trigonométricas, exponenciales, etc.
Función
Significado
ceil(x)
redondea al entero más pequeño no menor que x.
cos(x)
coseno de x.
exp(x)
ex
fabs(x)
valor absoluto de x.
floor(x) redondea al entero más grande no mayor que x.
log(x)
logaritmo natural de x.
log10(x) logaritmo base 10 de x.
pow(x,y) xy.
sin(x)
seno de x.
sqrt(x)
raíz cuadrada de x.
tan(x)
tangente de x.
Ejemplo
El siguiente ejemplo calcula el área de un triángulo conocidas las
longitudes de los lados a, b, c utilizando la fórmula:
area  ss  as  bs  c
Donde s es el semiperímetro del triángulo, o sea,
abc
s
2
Solución
1. Determinar las constantes, variables de entrada y de salida y
su tipo
Variables de entrada: a, b, c de tipo real
Variable intermedia: s de tipo real
Variable de salida: areaTriangulo de tipo real
2. Escribir la declaración de variables
float a, b, c;/* lados del triángulo */
float s; /*semiperímetro */
float areaTriangulo; /* área del triángulo */
3. Escribir las sentencias de entrada
cout << "Teclee las longitudes de los lados: ";
cin >> a >> b >> c; /* lee los lados */
Solución (cont.)
4. Escribir las expresiones para realizar los cálculos
s = (a + b + c)/2.0;
areaTriangulo = sqrt(s*(s-a)*(s-b)*(s-c));
5. Escribir las sentencias de salida
cout << "área: " << areaTriangulo << endl;
Programa triángulo
//Programa para calcular el área de un triángulo
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
float a,b,c; /* lados del triángulo */
float s;
/*semiperímetro */
float areaTriangulo;
/* área del triángulo*/
cout "Teclee las longitudes de los lados: ";
cin >> a >> b >> c;
/* lee los lados */
s = (a + b + c)/2.0;
areaTriangulo = sqrt(s*(s-a)*(s-b)*(s-c));
cout << "área: " << areaTriangulo << endl;
system(“pause”);
}