Ədədləri bir xətti massivə yığırıq. Sonra onları tərs ardıcıllıqla çıxarırıq.
Massivin tərsinə çevrilməsi ilə bağlı məsələnin həllinə baxaq. Bunun üçün iki göstərici texnikasından istifadə edək.
İki və dəyişəni təyin edək (onları göstərici adlandıraq):
massivinin əvvəlinə (i = 1);
massivinin sonuna (j = n);
Sonra while dövrü işə salırıq, burada:
və dəyərləri yerlərini dəyişirlər;
sonra artır, isə azalır;
Dövr, göstəricilər və görüşənə qədər davam edir.
Qeyd edək ki, və dəyərlərini əlavə dəyişəni vasitəsilə dəyişmək olar, üç əməliyyat icra etməklə:
Alqoritmin realizasiyası
Giriş məlumatlarını oxuyuruq.
scanf("%d",&n);
for(i = 0; i < n; i++)
scanf("%d",&mas[i]);Ədədləri tərsinə çıxarırıq.
for(i = n - 1; i >= 0; i--)
printf("%d ",mas[i]);
printf("\n");Massivin tərsinə çevrilməsi — realizasiya
Massiv elan edirik.
#define MAX 110
int m[MAX];Giriş məlumatlarını oxuyuruq.
scanf("%d",&n);
for(i = 1; i <= n; i++)
scanf("%d",&m[i]);İki göstərici texnikası ilə massivi tərsinə çeviririk.
i = 1; j = n;
while(i < j)
{
temp = m[i]; m[i] = m[j]; m[j] = temp;
i++; j--;
}Nəticə massivi çıxarırıq.
for(i = 1; i <= n; i++)
printf("%d ",m[i]);
printf("\n");STL reverse — realizasiya
#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;
int n, i;
vector<int> mas;
int main(void)
{
scanf("%d",&n);
mas.resize(n);
for(i = 0; i < n; i++)
scanf("%d",&mas[i]);
reverse(mas.begin(),mas.end());
for(i = 0; i < n; i++)
printf("%d ",mas[i]);
printf("\n");
return 0;
}Java realizasiya — massivi sağdan sola çıxarma
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
int n = con.nextInt();
int mas[] = new int[n];
for(int i = 0; i < n; i++)
mas[i] = con.nextInt();
for(int i = n - 1; i >= 0; i--)
System.out.print(mas[i] + " ");
System.out.println();
con.close();
}
}Java realizasiya — reverse
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
int n = con.nextInt();
int m[] = new int[n];
// Məlumatları oxuyuruq
for(int i = 0; i < n; i++)
m[i] = con.nextInt();
// Massivi tərsinə çeviririk
int i = 0, j = n - 1;
while(i < j)
{
int temp = m[i]; m[i] = m[j]; m[j] = temp;
i++; j--;
}
// Tərsinə çevrilmiş massivi çıxarırıq
for(i = 0; i < n; i++)
System.out.print(m[i] + " ");
System.out.println();
con.close();
}
}Python realizasiya
Giriş məlumatlarını oxuyuruq.
n = int(input())
lst = list(map(int, input().split()))Ədədləri tərsinə çıxarırıq.
for i in range(n - 1,-1,-1):
print(lst[i], end = " ")Python realizasiya — reverse
Giriş məlumatlarını oxuyuruq.
n = int(input())
lst = list(map(int, input().split()))reverse funksiyası vasitəsilə siyahısını tərsinə çeviririk.
lst.reverse()Tərsinə çevrilmiş siyahını çıxarırıq.
print(*lst)