Форум программистов, компьютерный форум, киберфорум
Наши страницы

банковский счет - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить, является ли x четным http://www.cyberforum.ru/cpp-beginners/thread248842.html
Определить, является ли значение целочисленной переменной x четным. Если является, то вывести на печать значение x, в противном случае напечатать "НЕТ".
C++ Функции Составить процедуру, результатом работы которой является сим¬вол, заданный при обращении к этой процедуре, если этот символ не является буквой, и соответствующая строчная (малая) буква в противном.... http://www.cyberforum.ru/cpp-beginners/thread248841.html
C++ Дан одномерный массив состоящий из целых чисел. C++
Дан одномерный массив,состоящий из целых чисел. Найти количество элементов массива,значения которых больше заданного числа А и кратных 5. Помогите решить ( в C++)
порядковый номер желаемого элемента C++
Здравствуйте. Нужно , чтобы указывало порядковый номер элемента массива, вводимого самим. Не знаю как лучше объяснить, короче... Нужно вывести массив, затем выбрать из него любое число,ввести его и ...
C++ Приимер с факториалом на с++ http://www.cyberforum.ru/cpp-beginners/thread248793.html
Вообщем нужно дописать код,дано задание:Дано n,вычислить 1/0!+1/1!+...+1/n! Для определённого числа могу написать(1,2,5,10 и т.д)А чтобы считал пример,не получается #include <iostream>...
C++ Аналог функции fscanf (C++) Здравствуйте. По заданию нужно написать аналог функции fscanf на языке C++. Каким способом это можно реализовать: построчное чтение с помощью fgets с разбором строки, посимвольное чтение с помощью... подробнее

Показать сообщение отдельно
GAME
23 / 23 / 3
Регистрация: 31.10.2009
Сообщений: 199
27.02.2011, 23:01
straus, Вообще, в вашем случае я бы советовал сделать список. Выглядеть будет так:
.h файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#pragma once
class Account
{
private:
        static int gNum;
        int num;
        float sum;                     // сумма
        float persent;          // годовой процент
        char* name;             
        char* fame;  
        Account *next;
public:
        Account(char*fname, char*lname, float sum, float persent);
        ~Account(void);
        Account* AddToList(Account *elem);
        Account* DeleteFromList(Account *elem);
        Account* FindInList(char *name,char *fame);
        void ShowList();
        void change(char*name, char*fame);
        void take(double summ);
        void put(double summ);
        void persent_put(double procent, int day);
        void balans();
        void print();
        void ReplaceName(char*fname,char *theFamily);
};
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
 
#include "stdafx.h"
#include <Windows.h>
#include <iostream>
#include <conio.h>
#include <math.h>
#include "Account.h"
using namespace std;
int Account::gNum=0;
Account::Account(char*fname, char*lname, float sum, float persent)
{
gNum++;
num=gNum;
name=new char[strlen(fname)];
strcpy(name,fname);
fame=new char[strlen(lname)];
strcpy(fame,lname);
this.sum=sum;
this.persent=persent;
next=NULL;
}
 
Account *Account::AddToList(Account *elem)
{
Account *tmp = this;
if(!tmp)
return elem;
while(tmp->next)
       tmp=tmp->next;
tmp->next=elem;
return this;
}
 
Account *Account::DeleteFromList(Account *elem)
{
Account *tmp = this;
 
while(tmp->next!=elem)
      tmp=tmp->next;
tmp->next=elem->next;
return this;
}
 
Account *Account::FindInList(char *name,char *fame)
{
Account *tmp = this;
while(tmp)
{
if(!strcmp(this.name,name) && !strcmp(this.fame,fame))
   return tmp;
tmp=tmp->next;
}
return NULL;
 
}
 
void Account::ShowList()
{
Account *tmp = this;
while(tmp)
{
 
   tmp->print();
   cout << "\n";
   tmp=tmp->next;
}
}
 
 void  Account :: ReplaceName(char*fname,char *lname)
   {
delete[] name;
delete[] fame;
name=new char[strlen(fname)];
fame=new char[strlen(lname)];
                            strcpy(name, fname);
                strcpy(fame, lname);
        }// смена фамилии и имени 
 
Account::~Account(void)
{delete[] name;
delete[] fame;}
 
 
void Account::take(double summ){
        sum-=summ;
}
 
void Account::put(double summ){
        sum+=summ;
}
 
void Account::persent_put(double procent, int day){
 
        persent=(sum*procent*day)/(365*100);
        sum=+persent;
}
 
void Account::print(){
cout<<"Номер счета:"<<num<<endl;        
cout<<"Фамилия:"<<fame<<endl;
cout<<"Имя:"<<name<<endl;
cout<<"Сумма:"<<sum<<endl;
cout<<"Процент:"<<persent<<endl;
 
}
 
 
 
int _tmain(int argc, _TCHAR* argv[])
{
        Account *BankClients=new Account("NIK","GAME",1000000.0f,100.0f)
    //Добавление нового клиента
        Account *newClient=new Account("Somebody","Some..",10.0f,1.0f);
      BankClients =  BankClients.AddToList(newClient);
  //Распечтка всего списка
   BankClients.ShowList();
        return 0;
}
Вообщем-то код корявый и написан за 5 минут ... так что ищите баги )
например голову списка удалять нельзя ... упс )))
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru