A medida que avanzan con la materia pues vamos viendo conceptos nuevos y que se pueden aplicar tanto para
- Disminuir lineas de codigo
- Mas claridad y criterio a la hora de programar
- Obtener una “idea” de como un problema se puede resolver de diversas maneras
¿ Qué es un arreglo ?
Un arreglo ó vector es un conjunto de variables que poseen el mismo nombre y el mismo tipo de dato con la unica diferencia que está ubicada en una posicion diferente.
¿ Cómo es su sintaxis ?
Pues un arreglo debe ser declarado asi:
tipo de dato nombre del arreglo [ número de variables que se quiere tener ] ;
Llevado a un ejemplo tangible seria: int edad [ 19 ];
Eso quiere decir que tendremos 20 variables llamadas edad que son de tipo entero ( int ).
¿ Pero qué es eso de que int edad [ 19 ] tiene 20 variables si yo veo 19 ?
Bien ese es una tipica pregunta, porque es muy cierto ¿ Por qué ponemos 19 si queremos 20 ? , la respuesta es porque la maquina comienza a contar desde el cero ( 0 ).
Ejemplo:
¿ Cuántos dedos tengo en la mano ? -> 10 ( me responderia una persona )
¿ Cuántos dedos tengo en la mano ? -> 9 ( me responderia una maquina )
Porque la persona comienza a contar desde uno ( 1 ), y la maquina desde cero ( 0 ).
Otro ejemplo, voy a un baño y veo a 2 personas entonces:
- Para mi ( como persona ) que cuento desde el 1 hay dos personas, osea:
persona 1 y persona 2 —> (persona 1 + persona 2) = 2 personas
- Pero para el lenguaje de programacion ( como maquina ) que cuenta desde el 0 hay 2 también, pero contadas desde el cero, osea:
persona 0 y persona 1 —> (persona 0 + persona 1) = 2 personas
Eso es explicandolo de manera didactica, pero bueno si bien es cierto quiza a unos ya les habran dado la regla general
aquella regla dice que: ” Los arreglos van de la posicion cero a la posicion n-1 ” ( donde n es la cantidad total de variables que queremos tener )
Y eso es lo mismo que se explica de manera mas didactica, vamos con un ultimo ejemplo:
Si quiero 5 caramelos entonces n=5 y el concepto dice que los arreglos van de 0 hasta n-1. Por lo tanto lo unico que hacen es reemplazar valores:
n-1 -> 5-1 —> 4. Entonces mi arreglo caramelos va a ser asi: int caramelos [4].
¿ Cuál es su uso ?
Como está en el concepto “es un conjunto de variables“ es decir que en un arreglo puedo tener N variables y ahorrarme estar declarando esas N variables manualmente, por ejemplo:
Declarar: int n1,n2,n3,n4,n5,n6,n7,n8;
Es lo mismo que declarar: int n[7];
como ven se ahorra mucho al hacerlo, y se ve un mejor criterio a la hora de programar
Ahora vamos a hacer un ejercicio para plasmar los conceptos en un programa, vamos a ello:
Hacer un programa que pida 12 numeros en orden y que muestre de los 12 numeros solo el tercero,sexto,decimo.
#include
main()
{
int x,numero[11];
cout<<“\n Ingrese los 12 numeros:\n”;
for (x=0; x<=11; x++)
{
cout<<“numero “<“: “;
cin>>numero[x];
}
cout<<“\n Tercer numero: “<2];
cout<<“\n Sexto numero: “<5];
cout<<“\n Decimo numero: “<9];
getch();
}
main()
{
int x,numero[11];
cout<<“\n Ingrese los 12 numeros:\n”;
for (x=0; x<=11; x++)
{
cout<<“numero “<
cin>>numero[x];
}
cout<<“\n Tercer numero: “<
cout<<“\n Sexto numero: “<
cout<<“\n Decimo numero: “<
getch();
}
- linea 1 – 2: la cabecera y libreria ***
- linea 3: funcion principal ***
- linea 4 – 16: inicio y fin del programa ***
- linea 5: declaramos variables ***
Aqui podemos ver que se ha declarado dos variables:
x -> variable para el for
numero[11] -> arreglo de 12 variables llamadas numero
y ambas estan bajo el tipo de dato int, asi que van a llevar datos enteros.
- linea 6: recurso ” cout ” ***
- linea 7: instruccion repetitiva: ” for ” ***
Con la variable x declarada como entera al comienzo, vamos a hacer dos acciones 12 veces:
- Nuestra primera accion será mostrar un mensaje: ” Ingrese el numero x ” ( donde x va a ir cambiando cada ves que se repita el “for” )
Puesto a que x inicialmente tiene cero ( 0 ), lo podemos ver en la definicion del for cuando ponemos (x=0; x<=11; x++)
Ahi decimos que x tendra un valor inicial de cero y llegará hasta 11 ( porque de cero a once hay 12 numeros y eso queremos “12 numeros” ), y va a ir de 1 en 1.
Bien entonces cuando mostremos: “ingrese el numero x“,
en la primera vez dirá: “ingrese el numero 0“,
en la segunda: “ingrese el numero 1” y asi sucesivamente…
La otra acción que debemos realizar dentro del “for” será pedir el numero, lo veremos con mas detalles mas abajo.
- linea 8 – 11: inicio y fin del ” for ” ***
- linea 9: recurso ” cout ” ***
Aqui es lo que les decia antes, sobre como se va a mostrar el incremento
- linea 10: recurso ” cin ” ***
Bien, ahora sabemos de sobra como ingresar variables pero con arreglos algunos se pueden confundir, por eso voy a explicarlo mas detalladamente para que se entienda bien lo que se va a hacer en ésta linea.
Como sabemos para pedir un dato se usa el recurso ” cin ” y antes lo haciamos por ejemplo de ésta manera:
cin >> numero1;
Bien, ahora como ya no estamos trabajando con variables solitarias sino con un conjunto de variables es decir un arreglo, debemos saber que en el caso de “numero” nosotros tenemos 12 ( con el mismo nombre y tipo ), y asi como les decia antes seria lo mismo que poner doce lineas asi:
cin>>numero1;
cin>>numero2;
cin>>numero3;
cin>>numero4;
y asi sucesivamente hasta pedir el numero12, pero eso NO vamos a hacer porque existen los arreglos que nos facilitan la vida evitandonos el estar declarando muchas variables para mas de usarlas una vez.. para ello tenemos nuestro numero [11]
Y asi mismo eso quiere decir que tengo un numero1,numero2,numero3,…….,numero12 pero no de manera individual sino en conjunto y se eso se denota por la posicion ya que poseen el mismo nombre y tipo, solo las podemos diferenciar por su posicion:
numero[0],numero[1],numero[2],numero[3],numero[4],numero[5],……….,numero[11]
Y si se fijan en el “for” la variable x va a ir incrementandose desde 0 hasta 11 de 1 en 1. Entonces podemos usar ese incremento para indicarle la posicion del arreglo en la que estamos pidiendole que ingrese el dato, de ésta manera:
- Cuando inicia el for, x vale cero entonces pedimos: numero [x] que equivale a pedir numero [0]
- Luego el for incrementa en 1, x vale 1 ( 0+1 ) entonces pedimos: numero [x] que equivale a pedir numero [1]
- Luego el for incrementa en 1, x vale 2 ( 1+1 ) entonces pedimos: numero [x] que equivale a pedir numero [2]
- Luego el for incrementa en 1, x vale 3 ( 2+1 ) entonces pedimos: numero [x] que equivale a pedir numero [3]
Y asi sucesivamente hasta llegar a que x=11 y se pide: numero [11] ese seria el ultimo. ( ya que queriamos 12 y de cero a once hay 12 ).
- linea 12,13,14: recurso ” cout ” ***
Como en el enunciado nos pedian que mostremos los que estan en la posicion 3 , 6 y 10 pues vamos a mostrarlos
y como ya venimos viendo seria:
* Para la posicion 3 —-> numero[2] ( porque va de cero a n-1 es decir de cero a 3-1 )
* Para la posicion 6 —-> numero[5] ( porque va de cero a n-1 es decir de cero a 6-1 )
* Para la posicion 10 —-> numero[9] ( porque va de cero a n-1 es decir de cero a 10-1 )
- linea 15: pausando el programa ***
Muy bien esta es la parte bàsica de lo que debemos saber sobre arreglos para realizar eficientemente muchos ejercicios donde nos piden variedad de variables. Cualquier duda/sugerencia/comentario hagalo saber el taller o en este Blog.
21 comentarios:
#include
using std::cout;
using std::cin;
using std::endl;
int main()
{
int x,numero[11];
cout<<"Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero "<<": ";
cin>>numero[x];
}
for (x=11; x>=0; x--)
{
cout << numero[x]<< endl;
}
system("pause");
return 0;
}
#include
#include
#include
using std::cout;
using std::cin;
using std::endl;
main()
{
int i, x,numero[11];
cout<<"\n Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero "<<": ";
cin>>numero[x];
}
for (i=11;i>=0;i--)
{
cout<<"numero de la posicion "<<i<<": "<<numero[i]<<"\n";
}
system( "PAUSE");
}
#include
using std::cout;
using std::cin;
using std::endl;
int main()
{
int x,numero[11];
cout<<"n Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero "<<": ";
cin>>numero[x];
}
cout<<" Tercer numero: "<<numero[2];
cout<<"Sexto numero: "<<numero[5];
cout<<"Decimo numero: "<<numero[9];
system("pause");
return 0;
}
#include
#include
using namespace std;
int main(int argc, char *argv[])
{
int x,numero[11];
cout<<" Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero "<<": ";
cin>>numero[x];
}
cout<<“\n Tercer numero: “<2];
cout<<“\n Sexto numero: “<5];
cout<<“\n Decimo numero: “<9];
getch();<<
}
for (x=11; x>=0; x--)
{
cout << numero[x]<< endl;
}
system("PAUSE");
return EXIT_SUCCESS;
}
#include
#include
main()
{
int x,numero[11],m;
cout<<"\n Ingrese los 12 numeros:\n"<>numero[x];
}
for (x=11; x>=0; x--)
{
cout<<"\n numero posicion "<<x<<" es :"<<numero[x]<<endl;
}
system ("pause");
return 0;
}
Sergio Andres Perdomo Murcia 2010192663
#include
using std::cout;
using std::cin;
using std::endl;
int main()
{
int x,numero[11];
cout<<"Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero"<<;
cin>>numero[x];
}
cout<<"numeros con posicion invertida"<<;
for (x=11; x>=0; x--)
{
cout <<numero[x]<< endl;
}
system("pause");
return 0;
}
Oscar Vanegas cod: 2008276871
#include
using std::cout;
using std::cin;
using std::endl;
int main()
{
int x,numero[11];
cout<<"Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero"<<;
cin>>numero[x];
}
cout<<"numeros con posicion invertida"<<;
for (x=11; x>=0; x--)
{
cout <<numero[x]<< endl;
}
system("pause");
return 0;
}
#include
#include
main()
{
int x,y,numero[11];
cout<<"\n Ingrese los 12 numeros:\n"<>numero[x];
}
for (y=11; y>=0; y--)
{
cout<<"Mostrados de manera descendente tenemos:\n"<<endl;
cout<<"Numero "<< y <<": "<<numero[x]<<endl;
system("pause");
return o;
}
#include
#include
using std::cout;
using std::cin;
int main()
{
int x,numero[11];
cout<< "\n Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero "<<": ";
cin>>numero[x];
}
cout<< "\n Tercer numero: "[2];
cout<< "\n Sexto numero: "[5];
cout<< "\n Decimo numero: "[9];
}
#include
#include
main()
{
int x,numero[12];
cout<<"\n Ingrese 12 numeros cualquiera:\n";
for (x=1; x<=12; x++)
{
cout<<"numero "<>numero[x];
}
cout<<"\n Tercer numero: "<<numero[3];
cout<<"\n Sexto numero: "<<numero[6];
cout<<"\n Decimo numero: "<<numero[10];
getch();
}
Mauricio Gutierrez
2006263423
#include |cstdlib| //librerias
#include |iostream|
#include |conio.h|
using namespace std; //usar funciones antiguas
int main(int argc, char *argv[])
{
int x,numero[11]; // se declara un arreglo de 12 digitos
cout<<"\n Ingrese los 12 numeros:\n"<>numero[x];
}
cout<<"\n Tercer numero: "<< numero[2]<<endl;//muestra los numeros que estan en la casilla 3 , 6 y 9
cout<<"\n Sexto numero: "<< numero[5]<<endl;
cout<<"\n Decimo numero: "<< numero[9]<<endl;
getche();
}
#include
using std::cout;
using std::cin;
using std::endl;
int main()
{
int x,numero[11];
cout<<"Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
//en cada espacio del vector se le asignara un numero//
cout<<"numero "<<": ";
cin>>numero[x];
}
// se organizaran los numeros en cada campo del vector de mayor a menor ( la posicion ) //
for (x=11; x>=0; x--)
{
cout << numero[x]<< endl;
}
system("pause");
return 0;
}
#include
using std::cout;
using std::cin;
using std::endl;
int main()
{
int x,numero[11];
cout<<"n Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero "<<": ";
cin>>numero[x];
}
cout<<" Tercer numero: "<<numero[2];
cout<<"Sexto numero: "<<numero[5];
cout<<"Decimo numero: "<<numero[9];
system("pause");
return 0;
}
#include
#include
using namespace std;
main()
{
int x, num[11];
cout<<"\n Ingrese 12 numeros \n";
for (x=0; x<=11; x++)
{
cout<<"Numero"<>num[x];
}
cout<<"\n Tercer numero: "<<num[2];
cout<<"\n Sexto numero: "<<num[5];
cout<<"\n Decimo numero: "<<num[9];
getch();
}
#include
#include
using namespace std;
int main(int argc,char*argv[])
{
int x;
int numero[11];
cout<<"\n Ingrese los 12 numeros:\n";
for(x=0; x<=11; x++)
{
cout<<"numero"<":";
cin>>numero[x];
}
cout<<"\n Tercer numero:"<<[2];
cout<<"\n Sexto numero:"<<[5];
cout<<"\n Decimo numero:"<<[9];
system("PAUSE");
return 0;
}
#include
using std::cout;
using std::cin;
using std::endl;
int main()
{
int x,num[11];
cout<<"n Ingrese los 12 numeros:\n";
for (x=0; x<=11; x++)
{
cout<<"numero "<<": ";
cin>>num[x];
}
cout<<" Tercer numero: "<<numero[2];
cout<<"Sexto numero: "<<numero[5];
cout<<"Decimo numero: "<<numero[9];
system("pause");
return 0;
}
#include
#include
#include
using std::cout;
using std::cin;
using std::endl;
main()
{
int x,numero[12];
cout<<"Digite los 12 numeros:\n";
for (x=0; x<=12; x++)
{
cout<<"Numero" << x <<": ";
cin>>numero[x];
}
cout<<"Tercer numero: " << numero [3] << ".\n";
cout<<"Sexto numero: " << numero [6] << ".\n" ;
cout<<"Decimo numero: " << numero [10]<< ".\n" ;
system("pause");
return 0;
}
Publicar un comentario