{"id":7915,"date":"2015-06-02T09:00:39","date_gmt":"2015-06-02T14:00:39","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/ccpg1001\/?p=7915"},"modified":"2026-03-04T23:07:27","modified_gmt":"2026-03-05T04:07:27","slug":"vectores-arreglos-una-dimension","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/algoritmos101\/fp-u04\/vectores-arreglos-una-dimension\/","title":{"rendered":"4.1 Vectores - Arreglos de una dimensi\u00f3n en Python"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#concepto\">Arreglos<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#ingreso\">Ingreso<\/a><\/p>\n\n\n\n<p><a href=\"#indices\">\u00edndices<\/a><\/p>\n\n\n\n<p><a href=\"#procedimiento\">Procedimiento<\/a><\/p>\n\n\n\n<p><a href=\"#salida\">Salida<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"concepto\">1. Arreglos en algoritmos<\/h2>\n\n\n\n<p>Al disponer de varios de <strong>datos<\/strong> de igual tipo y relacionados se manejan como un <strong>conjunto<\/strong>. Ejemplo: una lista de calificaciones de una lecci\u00f3n o las edades de los estudiantes.<\/p>\n\n\n\n<figure class=\"wp-block-table alignright\"><table><tbody><tr><th><span style=\"color: #d35400\">estudiante<\/span><\/th><th>edad[<span style=\"color: #d35400\">estudiante<\/span>]<\/th><\/tr><tr><td>1<\/td><td>17<\/td><\/tr><tr><td>2<\/td><td>21<\/td><\/tr><tr><td>3<\/td><td>19<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>El conjunto de datos se maneja como un \u201c<strong>arreglo<\/strong>\u201d que tiene las siguientes caracter\u00edsticas:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Todos los datos son de <strong>igual tipo<\/strong> (enteros, reales, l\u00f3gicos, etc.)<\/li>\n\n\n\n<li>Se conoce su \u201ctama\u00f1o\u201d, es decir la <strong>cantidad<\/strong> de elementos en el arreglo.<\/li>\n\n\n\n<li>El arreglo se identifica por medio del nombre del <strong>conjunto<\/strong> ordenado de datos.<\/li>\n\n\n\n<li>Cada elemento se identifica por una variable <strong>\u00edndice<\/strong> que da su posici\u00f3n.<\/li>\n<\/ul>\n\n\n<span class=\"wp-katex-eq katex-display\" data-display=\"true\"> edad = \\begin{pmatrix} 17\\\\21\\\\19 \\end{pmatrix} <\/span>\n\n\n\n<p>En \u00e9ste ejemplo se puede observar que:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>todos los datos de las edades son <strong>tipo entero<\/strong>, <code>int<\/code><\/li>\n\n\n\n<li>el tama\u00f1o o cantidad de estudiantes es <strong>n<\/strong>=3 en el arreglo<\/li>\n\n\n\n<li>los datos corresponden a la \u201c<strong>edad<\/strong>\u201d, nombre del arreglo<\/li>\n\n\n\n<li>mediante su posici\u00f3n en la lista <em>i<\/em>, se identifica al estudiante. El estudiante 2, i=2, la edad es edad[2]=21.<\/li>\n<\/ul>\n\n\n\n<p>Otro ejemplo , temperaturas por d\u00eda. Los datos son tipo Real, <code>float<\/code>:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color: #d35400\">d\u00eda<\/span><\/th><td>1<\/td><td>2<\/td><td>3<\/td><td>4<\/td><\/tr><tr><th>temperatura[<span style=\"color: #d35400\">d\u00eda<\/span>]<\/th><td>28.6<\/td><td>24.9<\/td><td>26.5<\/td><td>25.1<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><em>Tama\u00f1o n=4, temperatura[2]=24.9<\/em><\/p>\n\n\n\n<p>Para \u00e9ste caso, el arreglo contiene las mediciones de temperatura en varios d\u00edas, para \u00e9ste caso es de 4 d\u00edas, por lo que el arreglo es de tama\u00f1o 4. Todos los datos son n\u00fameros reales, si se quiere conocer la temperatura de un d\u00eda espec\u00edfico se usa la variable \u00edndice d\u00eda, con lo que se obtiene el valor de 24.9.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#concepto\">Arreglos<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#ingreso\">Ingreso<\/a><\/p>\n\n\n\n<p><a href=\"#indices\">\u00edndices<\/a><\/p>\n\n\n\n<p><a href=\"#procedimiento\">Procedimiento<\/a><\/p>\n\n\n\n<p><a href=\"#salida\">Salida<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"algoritmo\">2. Arreglos en algoritmos&nbsp;<\/h2>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Lazos o Bucles y Arreglos como Vectores en Python\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/7O46A1pDhH8?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>Los arreglos en algoritmos se manejan como vectores y matrices en \u00e1lgebra. Python dispone de la librer\u00eda Numpy para manejo de arreglos, por lo que en el bloque de inicio se requiere pedir la librer\u00eda <code>\"numpy\"<\/code> con el \u00e1lias <code>\"np\"<\/code>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #d35400\">import<\/span> numpy <span style=\"color: #d35400\">as<\/span> np<\/code><\/pre>\n\n\n\n<p>En el caso que se usen arreglos, los bloques de ingreso deben reflejar las acciones para llenar los datos.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#concepto\">Arreglos<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#ingreso\">Ingreso<\/a><\/p>\n\n\n\n<p><a href=\"#indices\">\u00edndices<\/a><\/p>\n\n\n\n<p><a href=\"#procedimiento\">Procedimiento<\/a><\/p>\n\n\n\n<p><a href=\"#salida\">Salida<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"ingreso\">3. Bloque de Ingreso<\/h2>\n\n\n\n<figure class=\"wp-block-image alignright size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"206\" height=\"302\" src=\"http:\/\/blog.espol.edu.ec\/algoritmos101\/files\/2015\/06\/VectorArreglo01.png\" alt=\"vector arreglo bloque de ingreso\" class=\"wp-image-16058\" \/><\/figure>\n\n\n\n<p>La primera pregunta para llenar una lista de temperaturas es para conocer cu\u00e1ntos datos se encuentran registrados. Por lo que primero se preguntar\u00e1 el <strong>tama\u00f1o<\/strong> <strong>n<\/strong> del arreglo .<\/p>\n\n\n\n<p>El ingreso de datos es de forma ordenada, por lo que se inicia el <strong>\u00edndice<\/strong> para solicitar el valor del primero de la lista.&nbsp; Por ejemplo:<br>d\u00eda=1,<\/p>\n\n\n\n<p>Luego se solicita el ingreso de la temperatura de cada d\u00eda: <strong>temperatura<\/strong>[d\u00eda] .<\/p>\n\n\n\n<p>Se contin\u00faa el siguiente <strong>\u00edndice<\/strong> , sum\u00e1ndole uno, para repetir la operaci\u00f3n hasta completar el ingreso de todos los datos.<\/p>\n\n\n\n<p>Se repite el procedimiento para cada elemento del arreglo \"<strong>temperatura<\/strong>\".<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#concepto\">Arreglos<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#ingreso\">Ingreso<\/a><\/p>\n\n\n\n<p><a href=\"#indices\">\u00edndices<\/a><\/p>\n\n\n\n<p><a href=\"#procedimiento\">Procedimiento<\/a><\/p>\n\n\n\n<p><a href=\"#salida\">Salida<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"indices\">4. Indices en arreglos<\/h2>\n\n\n\n<p>Los \u00edndices en arreglos se manejan de forma semejante a un vector en \u00e1lgebra. Sin embargo, la numeraci\u00f3n de casillas empieza en cero.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th><span style=\"color: #0000ff\">i<\/span><\/th><td><span style=\"color: #0000ff\">0<\/span><\/td><td><span style=\"color: #0000ff\">1<\/span><\/td><td><span style=\"color: #0000ff\">2<\/span><\/td><td><span style=\"color: #0000ff\">3<\/span><\/td><\/tr><tr><th><span style=\"color: #d35400\">d\u00eda<\/span><\/th><td>1<\/td><td>2<\/td><td>3<\/td><td>4<\/td><\/tr><tr><th>temperatura[<span style=\"color: #d35400\">d\u00eda<\/span>]<\/th><td>28.6<\/td><td>24.9<\/td><td>26.5<\/td><td>25.1<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Por lo que el d\u00eda 2, tiene \u00edndice 1. El \u00edndice est\u00e1 en el arreglo desplazado en una posici\u00f3n.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #d35400\">import<\/span> numpy <span style=\"color: #d35400\">as<\/span> np\ntemperatura = np.array(&#091;28.6, 24.9, 26.5, 25.1])\n\n<span style=\"color: #d35400\">&gt;&gt;&gt;<\/span> temperatura&#091;<span style=\"color: #0000ff\">2<\/span>]\n<span style=\"color: #0000ff\">26.5<\/span>\n<span style=\"color: #d35400\">&gt;&gt;&gt;<\/span> temperatura&#091;<span style=\"color: #0000ff\">1<\/span>]\n<span style=\"color: #0000ff\">24.9<\/span>\n<span style=\"color: #d35400\">&gt;&gt;&gt;<\/span> \n<span style=\"color: #d35400\">&gt;&gt;&gt;<\/span> <span style=\"color: #ff00ff\">len<\/span>(temperatura)\n<span style=\"color: #0000ff\">4<\/span>\n<span style=\"color: #d35400\">&gt;&gt;&gt; <\/span><\/code><\/pre>\n\n\n\n<p>Asunto para recordar cuando se realicen las operaciones en el arreglo.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#concepto\">Arreglos<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#ingreso\">Ingreso<\/a><\/p>\n\n\n\n<p><a href=\"#indices\">\u00edndices<\/a><\/p>\n\n\n\n<p><a href=\"#procedimiento\">Procedimiento<\/a><\/p>\n\n\n\n<p><a href=\"#salida\">Salida<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"procedimiento\">5. Bloque de procedimiento<\/h2>\n\n\n\n<p>Al manejar el conjunto de datos ordenado se puede realizar los c\u00e1lculos individualmente sobre cada elemento. O se puede manejar el conjunto con las reglas de vectores o matrices.<\/p>\n\n\n\n<p>Por ejemplo, promediar la temperaturas, requiere sumar todas las temperaturas y dividirlas para la cantidad de datos (tama\u00f1o)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><span style=\"color: #ff0000\"># PROCEDIMIENTO<\/span>\npromedio = np.sum(temperatura)\/n<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#concepto\">Arreglos<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#ingreso\">Ingreso<\/a><\/p>\n\n\n\n<p><a href=\"#indices\">\u00edndices<\/a><\/p>\n\n\n\n<p><a href=\"#procedimiento\">Procedimiento<\/a><\/p>\n\n\n\n<p><a href=\"#salida\">Salida<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"salida\">6. Bloque de Salida<\/h2>\n\n\n\n<p>Para la presentaci\u00f3n de datos, cuando se dicta o se muestra uno por uno,&nbsp; se procede de forma semejante al bloque de ingreso.<\/p>\n\n\n\n<p>En algunos lenguajes estructurados, existen formas de presentar todo el conjunto mediante una sola instrucci\u00f3n.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; title: ; notranslate\" title=\"\">\n# temperaturas promedio\nimport numpy as np\n\n# INGRESO\nn = int(input('cu\u00e1ntos d\u00edas: '))\n\ntemperatura = np.zeros(n,dtype=float)\ndia = 0\nwhile not(dia&gt;=n):\n    temperatura&#x5B;dia] = float(input('t: '))\n    dia = dia + 1\n\n# PROCEDIMIENTO\npromedio = np.sum(temperatura)\/n\n\n# SALIDA\nprint('promedio t: ',promedio)\nprint(temperatura)\n<\/pre><\/div>\n\n\n<p>que al ejecutar el algoritmo obtenemos<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cu\u00e1ntos d\u00edas: 4\nt: 28.6\nt: 24.9\nt: 26.5\nt: 25.1\npromedio t:  26.275\n&#091;28.6 24.9 26.5 25.1]\n<span style=\"color: #d35400\">&gt;&gt;&gt; <\/span><\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<div class=\"wp-block-group has-medium-font-size is-layout-flex wp-block-group-is-layout-flex\">\n<p><a href=\"#concepto\">Arreglos<\/a><\/p>\n\n\n\n<p><a href=\"#algoritmo\">Algoritmo<\/a><\/p>\n\n\n\n<p><a href=\"#ingreso\">Ingreso<\/a><\/p>\n\n\n\n<p><a href=\"#indices\">\u00edndices<\/a><\/p>\n\n\n\n<p><a href=\"#procedimiento\">Procedimiento<\/a><\/p>\n\n\n\n<p><a href=\"#salida\">Salida<\/a><\/p>\n<\/div>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n","protected":false},"excerpt":{"rendered":"<p>Arreglos Algoritmo Ingreso \u00edndices Procedimiento Salida 1. Arreglos en algoritmos Al disponer de varios de datos de igual tipo y relacionados se manejan como un conjunto. Ejemplo: una lista de calificaciones de una lecci\u00f3n o las edades de los estudiantes. estudiante edad[estudiante] 1 17 2 21 3 19 El conjunto de datos se maneja como [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"wp-custom-template-entrada-fp-unidades","format":"standard","meta":{"footnotes":""},"categories":[105],"tags":[],"class_list":["post-7915","post","type-post","status-publish","format-standard","hentry","category-fp-u04"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/7915","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/users\/8043"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/comments?post=7915"}],"version-history":[{"count":3,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/7915\/revisions"}],"predecessor-version":[{"id":22697,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/posts\/7915\/revisions\/22697"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/media?parent=7915"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/categories?post=7915"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/algoritmos101\/wp-json\/wp\/v2\/tags?post=7915"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}