May 2, 2020

Құрылымдар мен біріктірулер

Келесі мысал біріктірмелерді дұрыс пайдалану жауапкершілігі толығынан программалаушыда жатқанын көрсетеді.

#include <iostream.h> // С++ тілі стилінде
union Number {
  int x;
  float y;
};
void main() {
  Number znachenie;
  /* соңғы болып znachenie.y 
  элементі мән қабылдайды */
  znachenie.x = 100;
  znachenie.y = 50.;
  cout << "znachenie.x: " << znachenie.x <<
    " znachenie.y: " << znachenie.y << endl;
  /* соңғы болып znachenie.х 
  элементі мән қабылдайды */
  znachenie.y = 50;
  znachenie.x = 100;
  cout << "znachenie.x: " << znachenie.x <<
    "znachenie.y:"<<znachenie.y << endl;
}
struct_5
құрылымдар орнына оған арналған 
нұсқауышты қолдану мысалы
#include <iostream.h>
# define STR15 16# define MAX 50
int k;
struct boat {
  char model[STR15];
  int year;
  float price;
};
void print_data(boat * );
void main() {
  int i;
  boat Boats[MAX], * pastBoats;
  pastBoats = & Boats[0];
  cout << "How many boats? ";
  cin >> k;
  for (i = 0; i < k; i++) {
    cout << "\n Input a model 
    of the boat: ";
    cin >> pastBoats - > model;
    cout << "\n Input the year of 
    the creation of the boat: ";
    cin >> pastBoats - > year;
    cout << "\n Input the price 
    of the boat: ";
    cin >> pastBoats - > "price; 
    pastBoats++;
  }
  pastBoats = & Boats[0];
  print_data(pastBoats);
}
void print_data(boat * ptr_boat) {
  int i;
  cout << "\n";
  for (i = 0; i < k; i++)
  /* k айнымалысының көріну аймағына 
назар салыңдар */
  {
    cout << "The boat " << ptr_boat->model
    << " the year of the 
    creation " << ptr_boat -> year << endl;
    cout << " was sold for " 
    << ptr_boat - > price << "quot; << endl;
    ptr_boat++;
  }
}

1. Flat (бөлмелер саны, көлемі, қабаты, мекен жайы, бағасы) құрылымын сипаттаңыз.

Пернетақтадан жиымға бес элементтен тұратын Flat типіндегі мәндер енгізіңіз. Экранға бағалары (пернетақтадан) енгізілген саннан аспайтын пәтерлер жайлы ақпаратты шығару керек. Егер, ондай пәтер болмаса, программа экранға сәйкесінше хабарламаны шығаруы тиіс.

2. PEREVOZKI (ұшақ типі, рейстер саны, осы кезге дейінгі сағатпен берілген ұшқан

мерзімі, мың километрмен берілген ұшқан қашықтығы) құрылымын сипаттаңыз. Пернетақтадан жиымға алты элементтен тұратын PEREVOZKI типіндегі мәндер енгізіңіз. Экранға ұшқан мерзімі (пернетақтадан) енгізілген саннан артық ұшақтар жайлы ақпаратты шығару керек. Егер, ондай ұшақ болмаса, программа экранға сәйкесінше хабарлама шығарылуы тиіс.

3. AVTO (машина маркасы, түсі, бағасы, максималды (максимум) жылдамдығы) құрылымын сипаттаңыз. Пернетақтадан жиымға алты элементтен тұратын AVTOтипіндегі мәндер енгізіңіз. Экранға жылдамдығы (пернетақтадан) енгізілген саннан (аспайтын) кем болатын машиналар жайлы ақпаратты шығару керек. Егер, ондай машина болмаса, программа экранға сәйкесінше хабарламаны шығаруы тиіс.

4. TELEFON (абоненттің ЖАТ, телефон нөмірі, телефонға төлеген төлемі, орнатқан

жылы) құрылымын сипаттаңыз. Пернетақтадан жиымға бес элементтен тұратын TELEFON типіндегі мәндер енгізіңіз. Экранға орнатылған жылы (пернетақтадан) енгізілген саннан (аспайтын) артық болатын телефондар жайлы ақпаратты шығару керек. Егер, ондай телефон болмаса, программа экранға сәйкесінше хабарламаны шығаруы тиіс.

5. DET_SAD (бала бақша нөмірі, бүлдіршіндер саны, қала ауданы, бір айлық төлемі)

құрылымын сипаттаңыз. Пернетақтадан жиымға алты элементтен тұратын DET_SAD типіндегі мәндер енгізіңіз. Экранға көрсетілген аудандағы (ауданның аты пернетақтадан енгізіледі) бала бақшалар жайлы ақпаратты шығару керек. Егер, бұл ауданда балабақшалар әлі болмаса, программа экранға сәйкесінше хабарлама шығарылуы тиіс.

6. MUSEUM (мұражай аты, жұмыс жасау уақыты, билеттің құны, мекен жайы) құрылымын сипаттаңыз. Пернетақтадан жиымға алты элементтен тұратын MUSEUM типіндегі мәндер енгізіңіз. Экранға билетінің құны (пернетақтадан) енгізілген саннан (аспайтын) аспайтын мұражайлар жайлы ақпаратты шығару керек. Егер, ондай мұражай болмаса, программа экранға сәйкесінше хабарламаны шығаруы тиіс.

7. TOUR (елі, турдың ұзақтығы, транспорт түрі, бағасы) құрылымын сипаттаңыз. Пернетақтадан жиымға жеті элементтен тұратын TOUR типіндегі мәндер енгізіңіз. Экранға билет құны (пернетақтадан) енгізілген саннан (аспайтын) аспайтын елдер жайлы ақпаратты шығару керек. Егер, ондай ел болмаса, программа экранға сәйкесінше хабарламаны шығаруы тиіс.

8. PRICE (тауардың аты, құны, дүкеннің аты) құрылымын сипаттаңыз. Пернетақтадан

жиымға жеті элементтен тұратын PRICE типіндегі мәндер енгізіңіз. Экранға пернетақтадан енгізілген дүкендегі тауарлар жайлы барлық ақпаратты шығару керек. Егер, ондай дүкен болмаса, программа экранға сәйкесінше хабарламаны шығаруы тиіс.

9. FRIDGE (тауардың аты, дайындаған фирмасы, қоймадағы саны, бағасы) құрылымын сипаттаңыз. Пернетақтадан жиымға бес элементтен тұратын FRIDGE типіндегі мәндер енгізіңіз. Экранға бағасы (пернетақтадан) енгізілген саннан (аспайтын) аспайтын тоңазытқыштар жайлы ақпаратты шығару керек. Егер, ондай тоңазытқыш болмаса, программа экранға сәйкесінше хабарламаны шығаруы тиіс.

10. ZODIAK (жұлдыз бойынша зодиак белгісі, аты және жөні, туылған күні) құрылымын сипаттаңыз. Пернетақтадан жиымға жеті элементтен тұратын ZODIAK типіндегі мәндер енгізіңіз. Экранға жұлдызы «мерген» болатын адамдардың жөнін, атын және туылған күнін шығару керек. Егер, ондайлар жоқ болса, программа экранға сәйкесінше хабарламаны шығаруы тиіс.