JĘZYK C++
Stwórz tablicę 20 elementową , zdefinuj wskaźnik który należy ustawić na początek tej tabllicy,korzystając ze wskaźnika umieść w tablicy liczby od 1 do 20. Wyświetl tablicę korzystając ze wskaźnika . Zmodyfikuj elementy tablicy (od polowy, liczby 1-10) zwiększając je o 2 razy korzystając ze wskaźnika. Po tym wyświetl zmienioną tablicę korzystając ze wskaźnika.
" Life is not a problem to be solved but a reality to be experienced! "
© Copyright 2013 - 2024 KUDO.TIPS - All rights reserved.
#include <iostream>
int const rozmiar = 20;
using namespace std;
void przypisz(int * wsk);
void pomnoz(int * wsk, int przez_ile);
int main()
{
int tablica[rozmiar]; // Deklaracja tablicy
int * wsk_do_tablicy; //Deklaracja wskaznika
wsk_do_tablicy = &tablica[0]; //To samo co wsk_do_tablicy = tablica;
przypisz(wsk_do_tablicy);
pomnoz(wsk_do_tablicy, 2);
return 0;
}
void pomnoz(int * wsk, int przez_ile)
{
cout << "\n\nPo pomnozeniu\n\n";
for(int i=0;i<10;i++)
{
*wsk *= przez_ile; //Mnozenie pokazywanego miejsca przez wskaznik razy 2
cout << "\nElement " << i << " ma wartosc = " << *(wsk) << "\n";
wsk++; //Przesuniecie wskaznika o 1 miejsce
}
}
void przypisz(int * wsk)
{
for(int i=0;i<rozmiar;i++)
{
*wsk = i + 1; //Przypisanie liczby do komorek tablicy
cout << "\nElement " << i << " tablicy ma wartosc = " << *(wsk) << "\n";
wsk++; //Przesuniecie wskaznika o 1 miejsce
}
}
//druga czesc zadani ajest niejasna
//jezeli mam zostawic piersza polowe tablicy bez zmian (1-10),
//a od polowy kazda liczbe zwiekszyc 2 razy,
//tak ze 11 zmienie na 22, 12 na 24, itd
//to ponizej jest rozwiazanie
#include <iostream>
using namespace std;
int main()
{
int tab[20];
int * wsk;
wsk = tab;
int i;
for (i = 0; i< 20; i++) *(wsk++) = i + 1;
cout << "Tablica:" << endl;
wsk = tab;
for (i = 0; i< 20; i++) cout << "," << *(wsk++);
cout << endl;
wsk = tab;
for (i = 0; i< 10; i++) wsk++;
for (i = 0; i< 10; i++) *(wsk++) = 2 * *wsk;
cout << "Tablica zmieniona:" << endl;
wsk = tab;
for (i = 0; i< 20; i++) cout << "," << *(wsk++);
cout << endl;
return 0;
}