Este concepto se da cuando hay una relación entre las componentes de igual subíndice (misma posición) de un array y otro.

Si tenemos un array de tipo string en la que se almacenan los nombres de personas y un array de 5 enteros en la que se almacenan las edades de dichas personas, decimos que el array nombres es paralelo al array edades si en la componente 0 del array de nombres se almacena información relacionada a una persona (Juan - 12 años)
Es decir hay una relación entre cada componente del array de nombres y el array de las edades.
Esta relación la conoce únicamente el programador y se hace para facilitar el desarrollo de algoritmos que procesen los datos almacenados en las estructuras de datos.
Desarrollar un programa que permita cargar 5 nombres de personas y sus edades respectivas. Luego de realizar la carga por teclado de todos los datos, imprimir los nombres de las personas mayores de edad (mayores o iguales a 18 años)
package main
import "fmt"
func main() {
var edades [5]int
var nombres [5]string
for f := 0 ; f < len(edadades); f++ {
fmt.Print("Ingrese nombre:")
fmt.Scan(&nombres[f])
fmt.Print("Ingrese edad:")
fmt.Scan(&edades[f])
}
fmt.Println("Personas mayores de edad.")
for f := 0; f < len(edadades); f++ {
if edades[f] >= 18 {
fmt.Print(nombres[f]," ")
}
}
}
Mediante un for procedemos a la carga de cada nombre y su edad:
for f := 0 ; f < len(edadades); f++ {
fmt.Print("Ingrese nombre:")
fmt.Scan(&nombres[f])
fmt.Print("Ingrese edad:")
fmt.Scan(&edades[f])
}
Para imprimir los nombres de las personas mayores de edad verificamos cada componente del array de edades, en caso que sea igual o igual a 18 procedemos a mostrar el elemento de la misma posición del otro array:
fmt.Println("Personas mayores de edad.")
for f := 0; f < len(edadades); f++ {
if edades[f] >= 18 {
fmt.Print(nombres[f]," ")
}
}
ejercicio073.go
#include<stdio.h>
void cargar(char productos[5][41],float precios[5])
{
int f;
for(f=0;f<5;f++)
{
printf("Ingrese el nombre del producto:");
gets(productos[f]);
printf("Ingrese su precio:");
scanf("%f",&precios[f]);
fflush(stdin);
}
}
void precioMayorPrimero(float precios[5])
{
int f;
int cant=0;
for(f=1;f<5;f++)
{
if (precios[f]>precios[0])
{
cant++;
}
}
printf("La cantidad de productos con un precio mayor al primero ingresado son:%i",cant);
}
void imprimir(char productos[5][41],float precios[5])
{
int f;
for(f=0;f<5;f++)
{
printf("Producto: %s - Precio: %0.2f\n",productos[f],precios[f]);
}
}
int main()
{
char productos[5][41];
float precios[5];
cargar(productos,precios);
imprimir(productos,precios);
precioMayorPrimero(precios);
getch();
return 0;
}
ejercicio074.go
#include<stdio.h>
void cargar(char nombres[4][40],int notas[4])
{
int f;
for(f=0;f<4;f++)
{
printf("Ingrese nombre del alumno:");
gets(nombres[f]);
printf("Ingrese su nota:");
scanf("%i",¬as[f]);
fflush(stdin);
}
}
void imprimirEstado(char nombres[4][40],int notas[4])
{
int f;
for(f=0;f<4;f++)
{
printf("%s %i ",nombres[f],notas[f]);
if (notas[f]>=8)
{
printf("Muy bueno");
}
else
{
if (notas[f]>4)
{
printf("Bueno");
}
else
{
printf("Insuficiente");
}
}
printf("\n");
}
}
void cantidadAlumnosMuyBuenos(int notas[4])
{
int f;
int cant=0;
for(f=0;f<4;f++)
{
if (notas[f]>=8)
{
cant++;
}
}
printf("Cantidad de alumnos muy buenos:%i",cant);
}
int main()
{
char nombres[4][40];
int notas[4];
cargar(nombres,notas);
imprimirEstado(nombres,notas);
cantidadAlumnosMuyBuenos(notas);
getch();
return 0;
}