You are on page 1of 24

32 ბიტიანი კომპიუტერისთვის

char - იკავებს 1 ბაიტს int - იკავებს 4 ბაიტს


float - იკავებს 4 ბაიტს double - იკავებს 8 ბაიტს

1.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?


Int n=179;
Int *p;
p = &n;
Cout << *p;
179
2.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?
Float a=12.54;
float *k;
k=&a;
Cout<<*k;
12.54
3.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?
Int n= - 48;
int *t;
t=&n;
cout<<*t;
- 48

4.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?


float y= 4.25;
float *p = &y;
*p = 0.78;
Cout<<y;
0.78
5.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?
int b = 50;
int* q+5;
cout<<*q+5;
55

6.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?


Int a[4] = {1, 2, 3, 4};
Int* p = a;
cout<<*p<<*(p+2);
13

7.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?


Int a[4] = {1, 2, 3, 4};
Int* p = &a[0];
cout<<*p<<*(p+2);
13

8.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?


float x[4]={10.1, 1.2, 3.23, 4.0};
float* p = x;
cout <<*(p+1)+*p;
21.2

9.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?


float x[4]={10.1, 1.2, 3.23, 4.0};
float* p = x;
cout <<(*p+1) + *p;
21.2
10.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?
float k[5]={ 3, 2, 8, 4, 5 };
int* q = k;
cout <<*(q+3) + (*q- 1);
6

11.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?


float k[5] = { 3, 2, 8, 4, 5 };
cout <<*(k+3) + (*k- 1);
6

12.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შედეგად?


float a[5]={1, 2, 3, 4};
int* p=&a[1];
cout <<*p<<*(p+1)<<*(p+2)<<*(p- 1);
2341

13.გვაქვს int b[3] { 2, 4, 6 }, *bPtr=b; რომელი ოპერატორი მოგვცემს შეცდომას?


a. bPtr++;
b. bPtr = b+1;
c. b++;
d. bPtr = &b[0];

14.გვაქვს int b[3] { 2, 4, 6 }, *bPtr=b; რომელი გამოსახულება არ არის მასივის b[i]


ელემენტის ექვივალენტი?
a. *( b[0] + i )
b. bPtr[i]
c. *( b + i )
d. *( bPtr + i )
15.გვაქვს int b[3] { 2, 4, 6 }, *bPtr=b; რომელი გამოსახულება არ არის მასივის b[i]
ელემენტის ექვივალენტი?
a. b[0] + i
b. &bPtr[i]
c. b + i
d. bPtr + i

16.გვაქვს int b[5] , *bPtr =b; რომელი გამოსახულება არ არის მასივის b[i]
ელემენტის მისამართი?
a. cout << Ptr[i];
b. cout << *( Ptr + i );
c. cout << num + i;
d. cout << &num[i];

17.გვაქვს int num[10], *Ptr = num; რომელი ოპერატორი დაბეჭდავს მასივის i- ურ


ელემენტს ინდეხ- მიმთითებლის დახმარებით?
a. cout << Ptr[i];
b. cout << *( Ptr + i );
c. cout << num + i;
d. cout << &num[i];

18.გვაქვს int num[20], *nPtr = num; რომელია num მასივის მეათე ელემენტის
მისამართი?
a. nPtr + 10
b. nPtr + 5;
c. &nPtr[10]
d. &num[9];
19.გვაქვს int num[20], *nPtr = num; რას აღნიშნავს nPtr + 5 ?
a. num მასივის მეექვსე ელემენტის მისამართის
b. num[0] + 5
c. num მასივის მეხუთე ელემენტის მისამართს
d. &num[0]+5

20.რა შედეგს გამოიტანს შემდეგი ფრაგმენტი?


vioid swap (int *; int *);
int main(){
int a=15, b=25;
swap(&a, &b);
cout<<a<<b;
}
void swap (int*x, int *y){
int dam=*x;
*x=*y;
*y=dam;
}
a. 25 15
b. 15 25
c. - 15 - 25

21.მოცემულია ცვლადების მისამართები: &a=63384,&b=64390,&c=64400. რა შედეგს


გამოიტანს პროგრამა 32- ბიტიანი კომპიუტერისთვის (int - იკავებს 4 ბაიტს, float -
იკავებს 4 ბაიტს, double - იკავებს 8 ბაიტს );
int main()
{
float a,*p1;
int b,*p2;
double c,*p3;
a=2.5; b=3; c=2.96;
p1=&a; p2=&b; p3=&c;
p1++; p2++; p3++;
cout<<"p1="<<p1<<"p2="<<p2<<"p3="<<p3;
}
პასუხი: p1=0087F988 p2=0087F970 p3=0087F958
a. p1=63388 p2=64394 p3=64408 მედეამ თქვა ესააო მაგრამ, არაა ეს
b. არცერთი პასუხი არ არის სწორი
c. p1=63388 p2=64394 p3=64404
d. p1=3.5 p2=4 p3=8

22.მოცემულია ცვლადების მისამართები: &a=63384,&b=64390,&c=64400. რა შედეგს


გამოიტანს პროგრამა 32- ბიტიანი კომპიუტერისთვის (int - იკავებს 4 ბაიტს, float -
იკავებს 4 ბაიტს, double - იკავებს 8 ბაიტს );
int main()
{
float a,*p1;
int b,*p2;
double c,*p3;
a=2.5; b=3; c=2.96;
p1=&a; p2=&b; p3=&c;
p1++; p2++; p3++;
cout<<"p1="<<p1<<"p2="<<p2<<"p3="<<p3;
}
a. p1=63388 p2=64394 p3=
b. არცერთი პასუხი არ არის სწორი
c. p1=63388 p2=64394 p3=64404
d. p1=3.5 p2=4 p3=8
23.vPtr არის მასივის სახელი და ჩაწერილია 3000 მისამაღტზე. vPtr+1 ტოლია 3001-
ის. რა ტიპის არის მასივი? –
a. char
b. სულ ერთია
c. float
c. int

24.რა დაიბეჭდება პროგრამის შესრულების შემდეგ?


#include <iostream>
using namespace std;
int main()
{
int *p, x=5;
p=&x;
cout<<++(*p);
system("pause");
return 0;
}
a. 6
b. x ცვლადის მისამართი
c. 7
d. 5
e. კომპილაციის შეცდომაა
25.რა დაიბეჭდება პროგრამის შესრულების შემდეგ?
Include <iostream>
using namespace std;
int main()
{
int *p=5;
cout<<++(*p);
system(“pause”);
}
a. x ცვლადის მისამართი
b. კომპილაციის შეცდომაა
c. 6
d. 5
26.რა დაიბეჭდება პროგრამის შესრულების შემდეგ:
#include <iostream>
using namespace std;
int main()
{
int *p, a, b, c;
a=25;
p=&a;
c=*p;
cout<<a<<” ”<<b<<” ”<<c<<endl;
system(“pause”);
return 0;
}
a. 25 55 25
b. 25 25 25
c. 25 25 55
27.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შემდეგ:
#include <iostream>
using namespace std;
int main()
{
int x[]={1, 4, 8, 5, 7, 4};
int *p, y;
p=x+3;
y=*p;
cout<<y<<endl;
system(”pause”);
return 0;
}
a. sizeof(x)+3
b. რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შემდეგ:
c. 5

28.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შემდეგ?


#include <iostream>
using namespace std;
char* MyFunc(char *)
{ p+=3;
return p;
}
int main()
{
char *x, y;
x=”HELLO”;
y=MyFunc(x);
cout<<y= <<y<<endl;
system(”pause”);
return 0;
}
a. HELLO
b. LLO
c. LO
d. ELLO

29.რა დაიბეჭდება მოცემული ფრაგმენტის შესრულების შემდეგ?


#include <iostream>
using namespace std;
int main()
{
char *p;
p=”MAN”;
cout<<*p<<*(p+1)<<*(p+2)<<endl;
system(“pause”);
return 0;
}
a. MM1M2
b. MAN
c. MN0
d. კომპილაციის შეცდომაა
30.მიმთითებლის რომელი აღწერაა სწორია?
a. int *x
b. int x
c. int &x
d. ptr x

31.რომელi ბრძანება გვაძლებს int ტიპის ცვლადის მეხსიერების მისამართს; ?


a. &a;
b. address(a);
c. a;
d. *a;

32.რა მნიშვნელობას შეიცავს ცვლადი მიმთითებელი?


a. ტექსტურს
b. რიცხვითს
c. მისამართს
d. წილადურს

33.რომელი სიმბოლო გამოიყენება მიმთითებლის გამოცხადებისას?


a. *
b. &
c. @
d. #

34.რომელია დამისამართების ოპერაცია?


a. %
b. &
c. *
d. #
35.რაზე შეიძლება დამისამაღტების ოპერაციის განხორციელება?
a. მუდმივაზე
b. ცვლადზე
c. გამოსახულებაზე, რომელიც არ იძლევა მიმართვვის საშუალების მქონე
შედეგს
d. register ტიპის ცვლადზე

36.რომელი არითმეტიკული მოქმედების შესრულება შეიძლება ორ მიმთითებელზე?


a. გაყოფა
b. შეკრება
c. გამოკლება
d. გამრავლება

37.როდის აქვს აზრი არითმეტიკულ მოქმედებებს მიმთითებლებზე?


a. როდესაც მიმთითებელი const ტიპის არ არის
b. როდესაც მითითება ხდება მთელ ტიპაზე
c. როდესაც მიმთითებელი გამოიყენება ფუნქციის პარალელურად
d. როდესაც ისინი მიმაღტავენ მასივის ელემენტებს

38.მიმთითებელძე არ შეიძლება:
a. მთელი რიცხვის მიმატება
b. მიმთითებლის გამოკლება
c. მიმთითებლის მიმატება
d. მთელი რიცხვის გამოკლება
39.მიმთითებელზე არითმეტიკული მოქმედების შედეგად რომელი არ არის ლოგიკური
შეცდომა:
a. მიმთითებელს მივანიჭოთ იგივე ტიპის მიმთითებელი
b. მიმთითებლები არ მიმართავენ მასივს
c. მიმთითებლები არ მიმართავენ ერთი და იგვე მასივს
d. გავდივაღტ მასივის საზღვრებიდან

40.რა დარდება ერთმანეთს მიმთითებლების შედარების დროს?


a. შესაბამისი ცვლადების მნიშვნელობები~
b. მასივის შესაბამისი ინდექსები
c. შესაბამისი მისამაღტები
d. მიმთითებლების შედარება არ შეიძლება

41.დაასახელეთ არასწორი გამონათქვამი:


a. მასივის სახელი არის მიმთითებელი
b. მასივის სახელის მოდიფიცირება არითმეტიკული მოქმედებების საშუალებით
არ შეიძლება
c. პროგრამაში შეიძლება მიმთითებლის მოდიფიცირება არითმეტიკული
მოქმედებების დახმარებით
d. შეიძლება ორი მისამართის შეკრება

42.რა მიიღება შემდეგი პროგრამის შესრულების შედეგად?


#include <iostream>
using namespace std;
unsigned int f( unsigned int n);
int main()
{
unsigned int n = 5;
unsigned int y = f(n);
cout << n<<”I =”<< y << endl;
return 0;
}
unsigned int f( unsigned int n)
{
unsigned int t;
if(n <=1)
t = 1;
else
t = n * f(n - 1);
return t;
}
120

43.რა მიიღება შემდეგი პროგრამის შესრულების შედეგად?


#include <iostream>
using namespace std;
unsigned int Fb(unsigned int n);
int main()
{
unsigned int n = 5;
unsigned int y = Fb(n);
cout << y<< endl;
return 0;
}
unsigned int Fb(unsigned int n)
{
if(n ==0 || n== 1)
return n;
else
return Fb(n+1) + Fb(n- 2);
}
5

44.რას ითვლის შემდეგი პროგრამა?


#include <iostream>
using namespace std;
unsigned int f(unsigned int n);
int main()
{
unsigned int n = 5;
unsigned int y = f(n);
cout << n<<“I =” << y << endl;
return 0;
}
unsigned int f(unsigned int n)
{
unsigned int t;
if(n <= 1)
t=1;
else
t = n * fn – 1);
return 0;
}
a. n- ის ციფრთა ჯამს
b. n- ის ფაქტორიალს
c. ბეჭდავს n- ის შებრუნებულ მნიშვნელობას
45.რას ითვლის შემდეგი პროგრამა?:
#include <iostream>
using namespace std;
unsigned int Fb(unsigned int n);
int main()
{
unsigned int n = 5;
unsigned int y = Fb(n);
cout << “Fb(” << n << “)=” << y<< endl;
return 0;
}
unsigned int Fb(unsigned int n)
{
if(n ==0 || n== 1)
return n;
else
return Fb(n- 1) + Fb(n- 2);
}
a. მოცემული n- ისათვის ფიბონაჩის რიცხვების სხვაობას;
b. ფიბონაჩის რიცხვითი მიმდევრობის მე- n წევრის მნიშვნელობას;
c. მოცემული n- იისათვის ფიბონაჩის რიცხვებს;
46.რას აკეთებს შემდეგი პროგრამა?
#include <iostream>
using namespace std;
unsigned int f(unsigned int n);
int f(double a, int b)
{
If(b==0)
return 1;
else
return a*f(a,b- 1);
}
int main()
{
double a; int b;
a=3;
b=4;
cout <<f(a,b)<<endl;
system(“pause”);
return 0;
}
a. ნამდვილი რიცხვი აყავს მთელ დადებით ხარისხში
b. ამრავლებს ნამდვილ რიცხვს (b- 1)- ზე;
c. ნამდვილი რიცხვი აყავს ნებისმიერ ხარისხში
d. ითვლის რიცხვის ფაქტორიალს

47.ფუნქცია არის რეკურსიული, როდესაც:


a. ფუნქცია იძახებს თავის თავს;
b. ორივე პასუხი მცდარია
c. ფუნქცია არ იძახებს თავის თავს
48.იმისათვის რომ რეკურსია დასრულდეს აჭიროა:
a. რეკურსიული ბიჯების რაოდენობა იყოს სასრული;
b. რეკურსიული ბიჯების რაოდენობა დადიოდეს საბაზო შემთხვევამდე;
c. რეკურსიული ბიჯების რაოდენობა იყოს უსასრულო

49.რა დაბეჭდავს პროგრამის შემდეგი ფრაგმენტი?


char a[15];
cout << sizeof a;
15

50.რას დაბეჭდავს პროგრამის შემდეგი ფრაგმენტი:


char a;
cout << sizeof a;
1

51.რა დანიშნულება აქვს sizeof ოპერაციას?


a. ითვლის მასივის ზომას ბიტებში
b. ითვლის სიმბოლოთა რაოდენობას სიმბოლოთა მასივში
c. ითვლის ელემენტების რაოდენობას მასივში
d. ითვლის მასივის ზომას ბაიტებში

53.რას დაბეჭდავს პროგრამის შემდეგი ფრაგმენტი:


double a[20];
cout << sizeof a / sizeof( double );
a. 1
b. 20
c. სინტაქსური შეცდომა
d. 20 / 8
54.რის მიმართ არ შეიძლება sizeof ოპერატორის გამოყენება?
a. ტიპის სახელის
b. ცვლადის სახელის
c. მისამართის დიაპაზონის
d. მუდმივას

55.რას დაბეჭდავს პროგრამის შემდეგი ფრაგმენტი?


Int a[15]
cout << sizof a / sizeof ( int );
a. 15 / 4
b. 15
c. 1
d. სინტაქსური შეცდომაა
კატეგორია 11 (სტრუქტურები)

1.მოცემულია სტრუქტურა, როგორ გამოვაცხადებთ ამ სტრუქტურის ტიპის x


ცვლადს?
struct rectangle{
float length;
float width;
};
a. struct rectangle x;
b. struct x rectangle;
c. struct x;

2.მოცემული ფრაგმენტის მიხედვით როგორ გამოვიტანთ x სტრუქტურის length და


width მონაცემებს?
struct rectangle{
float length;
float width;
};
Int main(){
struct rectangle x;

}
a. cout<<lengh<<width;
b. cout<<x.length<<x.width;
c. cout<<rectangle.length<rectangle.width;
3.მოცემული ფრაგმენტის მიხედვით როგორ შევიტანთ n სტრუქტურის length და
width მონაცემებს?
struct rectangle {
float length;
float width;
};
int main(){
struct rectanlge x;

}
a. cin<<lengh<<width;
b. cin<<rectangle.lengh<rectangle.width
c. cin<<x.length<<x.width;

4.რა შედეგს გამოიტანს მოცემული პროგრამა?


struct rectangle {
float length;
float width;
};
int main(){
struct rectanlge x;
x.length=12;
x.width=10;
cout<<x.length*x.width;
}
120
5.მოცემულია სტრუქტურა, როგორ გამოვაცხქადებთ ამ სტრუქტურის ტიპის x
ცვლადს?
typedef struct {
float length;
float width;
} Rectangle;

a. struct rectangle;
b. struct x;
c. Rectangle x;

6.მოცემულია სტრუქტურა, როგორ მოხდება ამ სტრუქტურისტიპის მასივის


გამოცხადება?
typedef struct {
char gvari[20];
int qula;
} Student;

a. Student array;
b. Student array[0];
c. Struct student array[n];

7.რას გამოიტანს შემდეგი პროგრამა:


main(){
struct emp
{ char name[20];
Int empno;
}
struct emp e1=[“harrypotter, 1311”];
struct emp e2=e1;
if(e1==e2)
cout<<”same”;
else
cout<<”different”;
}
a. same;
b. different;
c. პროგრამაში შეცდომაა
d. არაფერი არ დაიბეღდება

კატეგორია 12 (სტრუქტურა 2)

1.სტრუქტურა არის მონაცემთა ტიპი, რომელშიც


a. ყველა ელემენტი უნდა იყოს ერთნაირი ტიპის
b. ყველა ელემენტი უნდა იყოს მხოლოდ ტექსტურიტიპის
c. ელემენტები შეიძლება იყოს სხვადასხვა ტიპის
d. ელემენტები უნდა იყონ მხოლოდ რიცხვითიტიპის

2.სტრუქტურის აღწერისთვის გამოიყენება შემდეგი საკვანძო სიტყვა


a. structure
b. struct
c. struc
d. structr
3.სტრუქტურის წევრზე წვდომა ხდება შემდეგი ოპერატორის გამოყენებით
a. *
b. .
c. [ ]
d. &

4.სტრუქტურის წევრად შეიძლება იყოს:


a. სკალარული ტიპი
b. მასივი
c. სტრუქტურა
d. არც ერთი ზემოთ აღნიშნული ტიპი

5.თუ სტრუქურის ერთი ან რამდენიმე წევრი წევრი არის სხვა სტრუქტურის ტიპის
მაშინ ასეთ სტრუქტურას ეწოდება:
a. ჩადგმული სტრუქტურა
b. არასწორი სტრუქტურა
c. არასტრუქტურული სტრუქტურა

You might also like