
20.12.2007, 04:00
|
|
Новичок
Регистрация: 07.12.2007
Сообщений: 3
С нами:
9698420
Репутация:
0
|
|
Сообщение от kez
ЭЭ..Как помочь? Могу помолиться. Или имеется ввиду так между делом "напишите за меня и дайте готовый код"... ? Ты же привел наработку, зачем тебе помогать?...
Ну и всё...на этом всё дело закончилось....дальше я хз ч0 с этим делать....а паскаль я вообще не знаю, ....а преподу пох....
|
|
|

20.12.2007, 08:54
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
С нами:
10562786
Репутация:
537
|
|
#include <stdio.h>
#include <iostream.h>
#include <string.h>
struct tree {
char value[10];
struct tree * parent;
struct tree * left;
struct tree * right;
} newTree;
void output (tree &newTree){
cout << newTree.value;
if(newTree.right->value != NULL)
output (*newTree.right);
}
void main(){
strcpy(newTree.value, "sim");
char text[10] = "sim2";
strcpy(newTree.right->value, "sim2");
output(newTree);
}
тока один вопрос - у меня студия глючит или эта прога действительно вылетает с ошибкой? вроде ничо криминального я там пока не написал, всего-то надо занести в структуру новое значение и попытаться рекурсивно вывести это бинарное дерево.
|
|
|

20.12.2007, 10:33
|
|
Новичок
Регистрация: 05.05.2007
Сообщений: 25
С нами:
10009289
Репутация:
0
|
|
|
|
|

20.12.2007, 13:08
|
|
Новичок
Регистрация: 15.03.2007
Сообщений: 9
С нами:
10082855
Репутация:
0
|
|
Лаба по C++
"Написать программу, которая создаёт очередь целых чисел вводимых с клавиатуры. Упорядочить эту очередь по возрастанию и вывисти её на экран."
struct Node
{
char data;
Node* next;
};
int main()
{
Node *firstPt=NULL;*token=NULL;*prev=NULL;
cout<<"Введите строку символов"
char ch, flag=1;
do
{
ch=getche();
token=new Node;
token->data=ch;
token->next=NULL;
if (flag)
{
firstPt=token; flag=0;
}
else prev->next=token;
prev=token;
}while(ch!='\r');
cout<<endl;
cout<<"Очередь:\n";
token=firstPt;
while(token)
{
cout<<token->data;
token=token->next;
}
cout<<endl;
getch();
return 0;
Это код создания самой очереди, но нет сортировки.
Немогу отсортировать эту очередь  помогите плз
|
|
|

20.12.2007, 18:29
|
|
Познающий
Регистрация: 18.12.2007
Сообщений: 32
С нами:
9682572
Репутация:
86
|
|
Сортировка выбором (selection sort).
Ищешь наимменьший элемент массива, который ставишь на место A[1], ишешь второй наименьший элемент, который ставишь на A[2]... Этот процесс продолжаешь для первых n-1 элементов массива.
Раборает за O(n*n).
Код:
for i:=1 to SIZE-1 do begin
min:=i;
for j:=i+1 to SIZE do
if a[j] > a [min]
then min:=j;
buf:=a[i]; a[i]:=a[min]; a[min]:=buf;
end;
Имхо, если брать произвольные числа, то heap-sort самое то- n*lg(n) (Но (!) хоть quick-sort в плохих случаях работает за n*lg(n) . . . . . n*n, тесты показывают, что он быстрее, связано с хз какой записью на винче).
З.Ы. Почитай Кормана.
|
|
|

20.12.2007, 19:51
|
|
Новичок
Регистрация: 22.08.2007
Сообщений: 10
С нами:
9852243
Репутация:
1
|
|
нид хелп
доброго времени суток )
помогите плз. есть задание:
написать программу, которая построчно выводит на экран слова для заданой строки.
вот что наваял, компилится но не работает (
Код:
TITLE vuvod_str.
.386
INCLUDE Study32.inc
WriteString PROTO
ReadString PROTO
WriteChar PROTO
WaitMsg PROTO
ExitProcess PROTO
.DATA
str_in byte 100h dup(?)
str_buff byte 0ffh dup(?)
str1 byte "vvedite stroky simvolov ne bolwe 255 slimvolov",0dh,0ah,0
.CODE
main PROC
mov edx, offset str1
call WriteString ;vuvod priglaweni9 vvesti simvolu
mov ecx, 0ffh
call ReadString ; edx - ukazivaet na bufer, ecx- razmer bufera -1 (rezerv pod 0), vozvrawaet v eax koli4estvo vvedenux simvolov
mov ecx, eax ; deistvitelnoe koli4estvo vvedenux simvolov,
lea ebx, str_in ; zapiwem adres v ebx
mov eax,0 ; obnulim na vs9kii sly4ai
mov edx,0 ;edx toje
L1:
mov al,byte ptr [ebx]+[edx]
cmp al, 20h
je L2 ;esli probel
inc edx ; uveli4im smewenie na 1
call WriteChar ;vuvodim simvol
cmp ecx,0 ; proverim ne dowli li do konca stroki
je L3 ;esli dowli go out
dec ecx ;umenwim koli4estvo ostavwuxs9 cuklov
jmp L1 ; go na sled simvol
L2:
call crlf ;perevod koretki
inc edx ; probel toje simvol
dec ecx
cmp ecx,0 ; proverim ne dowli li do konca stroki
jnz L1
L3:
call WaitMsg ; daem vozmojnost s4itat' rezult
call ExitProcess ; korektnui vuxod iz progi
main ENDP
END main
на деле при запуске после считывания ничего не выводит, немогу разобратся где ошибся...
знаю что можно было использовать repe но незнаю как ) было мало практики и примеры на практике были не сложные
|
|
|

20.12.2007, 20:46
|
|
Banned
Регистрация: 24.08.2007
Сообщений: 201
С нами:
9849986
Репутация:
424
|
|
А че это за язык у тя?
|
|
|

20.12.2007, 21:09
|
|
Новичок
Регистрация: 22.08.2007
Сообщений: 10
С нами:
9852243
Репутация:
1
|
|
Сообщение от Shawn1x
А че это за язык у тя?
утром был асм... (масм + библиотека study32.inс)
Последний раз редактировалось t3xHuK; 20.12.2007 в 21:17..
|
|
|

20.12.2007, 21:14
|
|
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
С нами:
11042306
Репутация:
2726
|
|
Поступило предложение воспользоваться отладченгом и посмотреть в риал-тайме где спряталась ошибко!
|
|
|

20.12.2007, 21:23
|
|
Новичок
Регистрация: 22.08.2007
Сообщений: 10
С нами:
9852243
Репутация:
1
|
|
Сообщение от kez
Поступило предложение воспользоваться отладченгом и посмотреть в риал-тайме где спряталась ошибко!
скачал олли дебаг, открыл, но тама совсем все не так)
на то чтоб без опыта разобраться что оно там накомпилило надо минимум день...
З.Ы. просто фактически это мой 3 кодинг на асме... отладчиком еще не умею пользоватся...
пошел искать инфу по олли, но это нада на завтра...
закачал архив с исходником и плодами компиляции
брать тут
компилил след строкой
ML /nologo -Zi -c -Fl -Sg -coff str_v_br.asm
линковал этой:
LINK32 /nologo str_v_br.obj user32.lib kernel32.lib Study32.obj /SUBSYSTEM:CONSOLE /DEBUG /MAP
Последний раз редактировалось t3xHuK; 20.12.2007 в 21:30..
Причина: добавил ссылку на файлы в архиве и доп инфу о компилировании
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|