ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #381  
Старый 18.04.2008, 16:28
DWORD
Участник форума
Регистрация: 24.07.2007
Сообщений: 138
Провел на форуме:
165671

Репутация: 215
По умолчанию

1. Язык? Технолоии? Среда? И т.д. ?
2. Такие услуги студенты старших курсов, аспиранты, преподаватели и люди которым нечего делать предоставляют за денежное вознаграждение, а вы на халявку хотите?
3. Студенты-программисты(!), которые лихорадочно ищут себе в интернете спасителя-избавителя от Д/З по информатике(!) достойны отчисления.

На самом деле - это же ваша специальность. И здесь нет ничего сложного, зачем вы собой места в ВУЗах занимаете, на них мог бы оказаться кто-то, кому это интересно.
 
Ответить с цитированием

  #382  
Старый 18.04.2008, 18:23
Loker
Познающий
Регистрация: 25.10.2007
Сообщений: 69
Провел на форуме:
348179

Репутация: 52
По умолчанию

Ребят выручайте, подправьте код плз чтоб работал а то я уже не знаю что делать. ПРога по бинарному дереву.
Код:
//---------------------------------------------------------------------------

#pragma hdrstop
#include <fstream.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <iomanip.h>
#include <iostream.h>
//---------------------------------------------------------------------------
const char* filename = "dbase";
enum Action {INSERT, DEL, INFO};
enum Dir {LEFT, RIGHT};
const int l_time = 20, l_type = 40, l_number = 12;

struct Fine{
char time[l_time];
char type[l_type];
float price;
Fine* next;
};

struct Node {
char number[l_number];
Fine* beg;
Node* left;
Node* right;
};

struct Data {
char number[l_number];
char time[l_time];
char type[l_type];
float price;
};

Node* descent(Node* p);
Node* first(Data data);
Data input(Action action);
int menu();
void print_node(const Node& node);
void print_dbase(Node* p);
Node* read_dbase(char* filename);
int read_fine(ifstream f, Data& data);
int remove_fine(Node* p,const Data& data);
void remove_fines(Node* p);
Node* remove_node(Node* root, Node* p, Node* parent, Dir dir);
Node* remove_tree(Node* p);
Node* search_insert(Node* root, const Data& data, Action action, Dir& dir, Node*& parent);
void write_dbase(ofstream f,const Node* root);
void write_node(ofstream f, const Node& node);
int main(int argc, char* argv[])
{
Node* p, *parent;
Node* root = read_dbase(filename);
ofstream fout;

Dir dir;
while (true){
switch (menu()){
case 1:
if(!root) root = first(input(INSERT));
else search_insert(root, input(INSERT), INSERT, dir, parent);
break;
case 2:
if(!root){cout << "ÁÀçà ïóñòà" << endl; break;}

Data data = input(DEL);
if (!(p=search_insert(root, data, DEL, dir, parent)))
cout << "Ñâåäåíèÿ îá à/ì îòñóòñòâóþò" << endl;
else
if (remove_fine(p, data) == 2
root = remove_node(root, p, parent, dir);
break;
case 3;
if(!root){ cout << "Áàçà ïóñòà" << endl; break;}

if(!(P =search_insert(root, input(INFO), INFO, dir, parent)))
cout << "Ñâåäåíèÿ îòñóòñòâóþò" << endl;
break;
case 4:
fout.open(filename);
if(!fout.is_open()) {
cout << "Îøèáêà îòêðûòèÿ ôàéëà " << filename << endl; return 1;
}
write_dbase(fout, root);
return 0;

case 5:
print_dbase(root);
break;
default;
cout << "Íàäî ââîñäèòü ÷èñëî îò 1 äî 4"<< endl;
break;
}
}
return 0;
}

Node* descent(Node* p){
Node* prev, *y = p->right;
if(!y->left) y->left = p->left;
else{
do{ prev = y; t=t->left;}
while(y->left);
y->left =p->left;
prev->left = y->right;
y->right = p->right;
}
return y;
}
Node* first(Data data){
Fine* beg = new Fine;
strncpy(beg->time, data.time, l_time);
strncpy(beg->type, data_type, l_type);
beg->price = data.price;
beg->next=0;
Node* root = new Node;
strncpy(root->number, data.number, l_number);
root->beg =beg;
root->left=root->right=0;
}

Data input(Action action){
Data data;
char buf[10], temp[3], temp2[3];
int day, month, hour, min;
cout << "Ââåäèòå íîìåð à/ì" << endl;
cin.getline(data.number, l_number);
if(action == INFO) return data;

do{
cout << "Ââåäèòå äàòó íàðóøåíèÿ â ôîðìàòå ÄÄ.ÌÌ,ÃÃ " <<endl;
cin >>buf;
strncpy(temp1, buf, 2); strncpy(temp2, &buf[3], 2)'
day = atoi(temp1); month = atoi(temp2);
}
while (!(day > 0 & day < 32 && month > 0 && month < 13));

strcpy(data.time, buf); strcat(data.time. " ");

do{
cout << "Ââåäèòå âðåìÿ íàðóøåíèÿ â ôîðìàòå ××:ÌÌ :" << endl;
cin >>buf;
strncpy(temp1, buf, 2); strncpy(temp2, &buf[3], 2)'
hour = atoi(temp1);
min = atoi(temp2);
}
while (!(hour >= 0 && hour < 24 && min >=0 && min < 60 ));

strcat(data.time, buf);
cin.get();
if (action == DEL) return data;

cout << "Ââåäèòå òèï íàðóøåíèÿ type" << endl;
cin.getline(data.type, l_type);

do{cout << "Ââåäèòå ðàçìåðû øòðàôà:" << endl;
cin >> buf;
}
while (!(data.price = (float)atof(buf)));
cin.get();
return data;
}
int menu(){
char buf[10];
int option;
do{
cout << "============================" << endl;
cout << "1 -Ââîä ñâåäåíèé î íàðóøåíèè" << endl;
cout << "2 -Ââîä ñâåäåíèé îá îïëàòå øòðàôà" << endl;
cout << "3-Ñïðàâêà";
cout << "4-Âûõîä" << endl;
cout << "============================" <<endl;

cin >> buf;
option = atoi(buf);}
while(!option);
cin.get();
return option;
}
void print_node(const Node& node){
cout << "Íîìåð à/ì " << node.number << endl;
Fine* pf = node.beg;
float summa = 0;
while (pf){
cout << "Âèä íàðóøåíèÿ " << pf->type << endl;
cout << "Äàòà è âðåìÿ " << pf-time;
cout << " Ðàçìåð øòðàôà " << pf->price <<endl;
}

void print_dbase(Node* p){
if(p){
print_node(*p);
print_dbase(p->left);
print_dbase(p->right);
}
}
Node * read_dbase (char* filename) {
Node * parent;
Dir dir;
Data data;
ifstream f(filename, ios::in| ios::nocreate);
if(!f) {
cout << "Íåò ôàéëà" << filtname << endl; return0;}

f.getline(data.number, l_number);
if(f.eof()) { cout << "Ïóñòîé ôàéë" << endl; return 0;}
read_fine(f, data);
Node* root = first(data);
while (!read_fine(f, data))
search_insert( root, data, INSERT, dir, parent);

while (f, getline(data, number, l_number)){
read_fine(f, data);
search_insert(root, data, INSERT, dit, parent);
}
return root;
}

int read_fine(ifstream f, Data& data){
f.getline(data.time, l_time);
if(data.time[0] == '=') return 1;
f.getline(data.type, l_type);
f->>data.price;
f.get();
return 0;
}

int remove_fine(Node * p, const Data& data){
Fine* prev, *pf = p->beg;
bool found = false;
while (pf && !found){
if(!strcmp(pf->time,data.time))
found = true;
else {
prev = pf;
pf = pf->next;
}
}
if (!found){
cout << "Ñâåäåíèÿ î íàðóøåíèè îòñóòñòâóþò." << endl;
return 1;
}
if(pf == p->beg)
p->beg = pf->next;
else
prev->next = pf->next;
delete pf;
if (!p->beg) return 2;
return 0;
}
Node* remove_node(Node* root, Node* parent, Dir dir){
Node *y;
if (!p->left) y=p->right;
else if (!p->right) y = p->left;
else y=descent(p);
if (dir == LEFT) parent->left = y;
else parent->right = y;
}
delete p;
return root;
}
Node* search_insert(Node* root, const Data& data, Action action, Dir& dir, Node*& parent){
Node* p =root;
bool found = false;
int cmp;
parent = 0;
while (p && !found){
cmp = strcmp(data.number, p->number);
if(!cmp) found = true;
else{
parent = p;
if (cmp < 0) { p=p->left; dir = LEFT;}
else { p = p->right; dir = RIGHT;}
}
}
if (action !=INSERT) return p;

Fine* pf = new Fine;
strncpy(pf->time, data.time, l_time);
strncpy(pf->type, data.type, l_type);
pf->price = data.price;
pf->next =0;

if (!found){
p= new Node;
strncpy(p->number, data.number, l_number);
p->beg = pf;
p->left = p->right = 0;
if(dir == LEFT)
parent->left = p;
else
parent->right =p;
}
else {
Fine* temp = p->beg;
while (temp->next) temp = temp->next;
temp->next= pf;
}
return p;
}
void write_dbase(ofstream f, const Node *p) {
if(p){
write_node(f, *p);
write_dbase( f, p->left);
write_dbase (f, p->right);
}
}
void write_node(ofstream f, const Node& node){
f << node.number << endl;
Fine* pf = node.beg;
while{pf}{
f << pf->time << endl <<pf->type <<endl << pf->price << endl;
pf =pf->next;
}
f<< "=" <<endl;


        return 0;
}
//-------------------------------

Последний раз редактировалось Loker; 19.04.2008 в 01:31..
 
Ответить с цитированием

  #383  
Старый 18.04.2008, 19:46
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме:
4037638

Репутация: 1821


Отправить сообщение для De-visible с помощью ICQ
По умолчанию

Цитата:
Сообщение от Ivanich  
Срочно нужна помоч.

Помогите сделать задачи.
первая:

Номиналы россиыских рублей могут принимать значения 1,2,5,10,50,100,500,1000,5000. Копейки представить как 0.01 (1 копейка), 0.05 (5 копеек). 0.1 (10 копеек), 0.5 (50 копеек). Создать клаасс Money для работы с денежными суммами. Сумма должна быть представлена полями-номиналами, значениями которых должно быть количество купюр данного достоинства. Реализовать сложение сумм, вычитание сумм, деление сумм, деление суммы на дробное число, умножение на дробное число и операции соавнения. Дробная часть (копейки) при выводе на экран должны быть отделена от целой запятой.

Вторая задача.

Создать класс ModelWindow для работы с моделями экранных окон. В качестве полей задаются: заголовок окна, координаты левого верхного угла, размер по горизонтали, размер по вертикали, цвет окна, состояние "видимое/невидимое", состояние "с рамкой//без рамки". Координаты и размеры указываются в целых числах. Реализовать операции: передвижение окна по горизонтали.

Во всех этих заданиях, помимо указанных взадании операций, обязательно должны быть реализованы следующие методы:

# метод инициализации Init;

# ввод с клавиатуры Read;

# вывод на экран Display;

# преобразование в строку tostring.

Все задания должны быть реализованы тремя способами.

1. тип данных представляется структурой с необходимыми полями, а операции
реализуются как внешние функции, которые получают объекты данного типа в
качестве аргументов.
2. Как класс с закрытыми полями, где операции реализуются как методы класса.

3. инкапсулировать поля класса в независимой структуре и в ней реализовать методы Init(), Read(), Display(), tostring(). В основном классе должно быть поле данных, представленное объектом структурой.[/I]
Мог бы хоть написать какой язык программирования....
И думаю на врядли кто возьмется за это просто так....
Этот сайт не по решению домашних заданий....
 
Ответить с цитированием

кому не лень помочь
  #384  
Старый 21.04.2008, 13:21
Ivanich
Новичок
Регистрация: 19.03.2008
Сообщений: 3
Провел на форуме:
21476

Репутация: 0
Post кому не лень помочь

язык С++.
 
Ответить с цитированием

  #385  
Старый 22.04.2008, 00:42
advokat.holy
Новичок
Регистрация: 05.03.2008
Сообщений: 11
Провел на форуме:
46977

Репутация: 1
По умолчанию

Люди помогите..... ПЛЛЛЗЗЗЗзззз!

Вот текст программы
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#define n 10
#define IA for(i=0; i<n; i++)
void _max(int *a, int *max, int *imax);
void _min(int *a, int *min, int *imin);
void _SrAr(int *a, float *SrAr);
void main()
{
int a[n], max, imax,i;
int min, imin;
float SrAr;
randomize();
IA
a[i]=random(10);
printf("Zgenerovanuy masuv e takum:\n");
IA
printf("%d",a[i]);
puts("");
_max(a, &max, &imax);
printf("max=%d\n imax=%d\n",max,imax+1);
_min(a, &min, &imin);
printf("min=%d\n imin=%d\n", min,imin+1);
_SrAr(a, &SrAr);
printf("Seredne arufmetu4ne=%f", SrAr);
getch(); clrscr();
}
void _max(int *a, int *max, int *imax)
{
int i;
*max=a[0];
IA
if (*max<a[i])
{
*max=a[i];
*imax=i;
}
}
void _min(int *a, int *min, int *imin)
{
int i;
*min=a[0];
IA
if (a[i]<*min)
{
*min=a[i];
*imin=i;
}
}
void _SrAr(int *a, float *SrAr)
{
int k,i;
k=0;
SrAr=0;
IA
if (a[i]<0)
{
SrAr+=a[i];
k++;
}
if (k>0)
SrAr/=k;
}
Язык С, программа находит максимальный, минимальный, и их последовательные номера, да и еще среднее арифметическое сгенерированого массива.
Но она не паше тдоходит до SrAr/=k; Останавливаесться на к и компилятор арет Illegal use of pointer. Я понимая что что-то не так с указетелем, неправильное использование, но что? ПОМОГИТЕ Плз. Глюк токо в последней фу-и _SrAr.
 
Ответить с цитированием

  #386  
Старый 22.04.2008, 15:10
criz
Постоянный
Регистрация: 04.11.2007
Сообщений: 303
Провел на форуме:
811764

Репутация: 119
По умолчанию

Код:
  if (k>0)
    *SrAr/=k;
 
Ответить с цитированием

Задачи по Паскалю
  #387  
Старый 22.04.2008, 22:01
WinTREI
Новичок
Регистрация: 14.03.2008
Сообщений: 28
Провел на форуме:
39192

Репутация: 2
По умолчанию Задачи по Паскалю

2 лабы по массивам

1) Даны целочисленные массивы X и Y с разным количеством элементов. Найти
максимальные элементы в этих массивах среди элементов, имеющих нечетный
индекс. Ввод массивов выполнять в процедуре, а нахождение максимального
элемента - в функции.

2) Дан массив целых чисел. Получить новый массив из первоначального,
отбросив все нулевые элементы в этом массиве.
Также используя процедуры и функции

Помогите плиз, срочно надо, самому мне долго разбераться
 
Ответить с цитированием

  #388  
Старый 22.04.2008, 22:07
lll6
Познающий
Регистрация: 01.03.2008
Сообщений: 99
Провел на форуме:
613745

Репутация: 51
По умолчанию

2)
Код:
program vtoraia;
const n=10;
var x,t:integer; a,b:array [1..n] of integer;
begin
t:=1;
 for x:=1 to n do
  a[x]:=random (100);
 for x:=1 to n do
   if a[x]<>0 then begin b[t]=a[x]; t:=t+1; end;
 for x:=1 to t do
  writeln (b[x],' ');
  readln
end.
 
Ответить с цитированием

  #389  
Старый 22.04.2008, 22:16
WinTREI
Новичок
Регистрация: 14.03.2008
Сообщений: 28
Провел на форуме:
39192

Репутация: 2
По умолчанию

спасибо конечно, но хотелось бы через процедуры и функции, там сложнее ><
 
Ответить с цитированием

  #390  
Старый 22.04.2008, 22:17
lll6
Познающий
Регистрация: 01.03.2008
Сообщений: 99
Провел на форуме:
613745

Репутация: 51
По умолчанию

Как умею) Главное что бы работала
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сюда выкладываем все проги для фрикринга мобильников, которых знаем! nigger Сотовый фрикинг 5 11.04.2009 11:15
Американским студентам запретили пользоваться Skype KPOT_f!nd Мировые новости 1 28.09.2006 03:47
Любителям квестов сюда!! FoX's Болталка 10 25.01.2005 20:42



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ