Hyluss icon

Kontakty (klasa i struktura)

Hyluss | PRO | 07/02/16 05:57:42 PM UTC | 0 ⭐ | 469 👁️ | Never ⏰ | []
C |

3.62 KB

|

None

|

0 👍

/

0 👎

// adres zadanie.cpp : Defines the entry point for the console application.
 
 
// chyba nie do konca dzialal xD
 
#include "stdafx.h"
#include <conio.h>
#include <string>
#include <cstdlib>
 
 
typedef enum
{
    KOMORKOWY=1,
    DOMOWY,
    SLUZBOWY
} TRodzaj;
 
typedef struct
{
//  private:
    char Numer [10];
    int kierunkowy;
    TRodzaj Rodzaj;
} TTelefon;
 
 
 
//////////////////////////////////
 
class TNumerTelefonu 
{
char nazwisko[50];
TTelefon tel[5];
 
 
char pelnykontakt [50];
int pozycja;
 
void ZerujTablice (char*);
 
 
public:
TNumerTelefonu (char* nr, int kier, int pozycja );
char* ScalNumer (char* tab,char rodz);
 
};
 
/// konst
//numer, kierunkowy, rodzaj telefonu ?, pozycja
 
TNumerTelefonu::TNumerTelefonu(char* nr, int kier, int pozycja ) {
int j=0;
 
    
    
    tel[pozycja].kierunkowy = kier; 
 
    
    char *ptr = tel[pozycja].Numer;
 
    for (int i=0;i<9;i++)
    {
    ptr[i] = nr[j];
    j++;
    }
    ptr [9] = '\0'; 
 
}
 
//////////////////////////////////////////////////////////
void TNumerTelefonu::ZerujTablice (char* telefon)
{
    for (int i=0; i<40; i++)
    {
        telefon[i] = 0;
    }
}
 
 
//////////////////////////////////////////////////////////////////////////////////////
/*
int TNumerTelefonu::ZwrocKierunkowy ()
{
    return kierunkowy;  
 
}
*/
////////////////////////////////////////////////////////////////////////////
 
char* TNumerTelefonu::ScalNumer (char* tab, char rodz)
{
    char *ptr=pelnykontakt;
    ptr[0] = '+';
char jednosci = tel[pozycja].kierunkowy %10;
char dziesiatki = (tel[pozycja].kierunkowy - jednosci) /10;
 
    ptr[1] = '0' + dziesiatki;
    ptr[2] = '0' + jednosci;
    ptr[3] = ' ';
    ptr++;
    strcpy (ptr,tel[pozycja].Numer);
    
    ptr+=strlen (ptr);
 
    if (rodz == KOMORKOWY)
    {
    strcpy (ptr," komorka \n");
    }
    
    if (rodz == DOMOWY)
    {
    strcpy (ptr," domowy \n");
    }
 
    if (rodz == SLUZBOWY)
    {
    strcpy (ptr," sluzbowy \n");
    }
 
 
return pelnykontakt;
}
 
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
/////////////miejsce, kierunkowy, numer, rodzaj telefonu////////////////////////////
char imie [20];
char nazwi[20];
char cyfra;
char numer[9];
int licznik=0;
int kierunkowy;
int slot; 
char powtorz;
 
TRodzaj wybor;
//int koniec=0;
 
 
 
 
 
 
printf ("Podaj imie i nazwisko \n");
scanf ("%s %s",&imie, &nazwi);
//puts((char *)&imie);
//puts((char *)&nazwi);
 
 
do { // czy powtorzyc
 
licznik =0;
 
 
do {
 
printf ("Podaj rodzaj telefonu:\n 1 - komorka\n 2 - domowy\n 3 - sluzbowy\n");
 
scanf("%d",&wybor);
 
} while ( (wybor !=KOMORKOWY) && (wybor !=DOMOWY) && (wybor !=SLUZBOWY) );
 
printf ("Podaj kierunkowy \n");
    
 
    do {
 
    cyfra = getch();
    if ( (cyfra>= '0') && (cyfra <='9') )
    {
        if (licznik ==0)
        {
            kierunkowy = (cyfra - '0') * 10;
        }
 
        else
        {
            kierunkowy += cyfra - '0';
        }
        licznik++;
        putchar (cyfra);
    }
    } while (licznik !=2);
 
licznik =0;
 
printf ("Wpisz numer zawierajacy 9 cyfr.\n");
            do {
                
                cyfra = getch ();
                if ( (cyfra >= '0') && (cyfra <='9') )
                {
                    numer[licznik] = cyfra;
                    licznik ++;
                    putchar (cyfra);
                }
            
            }while (licznik != 9);
 
printf ("\n");
 
 
 
printf ("Do ktorej komorki chcesz zapisac 0-4?\n");
scanf ("%d", &slot);
 
 
    TNumerTelefonu ttt(char* nr, int kier, int pozycja );
 
 
 
//printf ("oto kontakt: %s\n", ttt.ScalNumer ( (char*)&numer, wybor) );
 
 
//numer, kierunkowy, rodzaj telefonu, slot
 
 
 
 
printf ("Chcesz dopisac numer?\n1- Tak\n2- Nie");
scanf ("%d",&powtorz);
switch (powtorz)
{
    case 1:
    {
        licznik = 1;
        break;
    }
 
    default:
        {
            break;
        }
}
 
 
} while (powtorz == 1);
 
 
    _getch();
    return 0;
}

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎