стационар.
В стационарном отделении 60 мест по 4 койки в отдельной палате.Написать программу ,которая бы выдавала номер свободного места, чтобы госпитализировать пациента, или номер палаты , где располагался пациент.
Вообщем, используй классы. Свойствами массива объектов palat[14] класса Palats будет массив булевых значений bool Koiki[3] и имя пациента string Nane[3] и string SoName[3]. Если заполнять с нуля, то как раз по четыре. Койки инициализируешь конструктором как true - свободные. В функции main спрашиваешь, что вы хотите - вывести номер свободных коек, заполнить ещё одну или найти пациента. Если заполнить, то выводишь в текстовый файл номер занятой теперь койки, а в другой - имя и фамилию больного. Если найти свободную - читаешь файл, койки с номерами из файла инициализируешь как false, а затем выводишь номера true-коек. А если найти пациента, то ищешь с помощью цикла во втором файле имя/фамилию, одновременно увеличивая на 1 счётчик (нап. s++; )
Допустим, имя в списке 4-е. Тогда ищешь в первом файле 4-й номер и выводишь его!
[Ответ]
Amur 23:38 20.12.2007
2 2R1Zt: мож я глупый но как можно подобрать конкретное решение(я о задаче) из безчисленно количества вариантов входных данных?
Условие нужно ставить более конкретней: что должно быть на входе, а что на выходе, какие исходные данные. Или хотябы опиши как заполнены места в палатах хаотично или упорядочено.
2 DeniSS1: в С++ при инициализации массива указывается его длинна и она на 1 больше чем индекс последнего элемента массива [Ответ]
Kikoz 10:50 21.12.2007
Amur, ды какая разниуа как они заполнены. Пихаешь пациента в первую по порядку свободную койку и все. По-моему, все предельно просто.
Писать программу не буду. Или автор сам ее напишет и ему это будет полезно, или ему это действительно нах не надо, тогда зчем ее писать?
[Ответ]
[Ариец] 11:18 21.12.2007
Два массива:
один двухмерный: 4 на 60
второй: динамический двумерный массив m (в зависимости от данных пациента) на n
В первом массиве - койки свободные - значение 0, занятые - 1
во втором массиве - m-1 колонок - данные о пациенте: ФИО, Возраст, дата поступления больного.. не знаю что туда ещё вписать можно, в последней - номер комнаты и номер койки через запятую.
Второй вариант: можно сделать второй массив просто динамическим массивом из записей.
Структура записи будет тогда такая: ФИО, Возраст, дата поступления, ещё чего-нибудь, номер комнаты, номер койки.... Либо номер комнаты и номер койки объеденить через запятую или точку с запятой или слеш в одном поле....
[Ответ]
Part!zan 20:48 21.12.2007
Блин, скоро будут про сортировку массивов "пузырьком" спрашивать... Или Хелло ворлд...
[Ответ]
Народ помогите мне лучше програмным кодом я не знаю как это записать
[Ответ]
[Ариец] 20:55 23.12.2007
Сообщение от 2R1Zt:
Народ помогите мне лучше програмным кодом я не знаю как это записать
уууууууууу..... Тогда ты попал...
Могу помочь только с
Сообщение от Part!zan:
Хелло ворлд...
и только на языке, приближенном к Си. (php)
[Ответ]
DeniSS1 21:23 23.12.2007
2R1Zt, ты хотя бы В ОБЩИХ ЧЕРТАХ знаешь, что такое С++? :-)
[Ответ]
Pengvin 22:00 23.12.2007
во написал тебе код на самом лучшем языке программирования на свете. Компилировать Fasm`ом
Сообщение от :
org 100h
;начало поиска
xor al,al
mov cx,60
mov di,Palati
repne scasb
mov ax,di
sub ax,Palati
;конец поиска номер палаты в ax
;дальше идет вывод данных
push ax
shr al,4
cmp al,10
sbb al,69h
das
mov ah,0Eh
int 10h
pop ax
push ax
and al,00001111b
cmp al,10
sbb al,69h
das
mov ah,0Eh
int 10h
mov al,' '
int 10h
pop ax
;получаем номер палаты
shr ax,2
inc ax
;дальше опять вывод данных
push ax
shr al,4
cmp al,10
sbb al,69h
das
mov ah,0Eh
int 10h
pop ax
and al,00001111b
cmp al,10
sbb al,69h
das
mov ah,0Eh
int 10h
ret
Palati:
db 1,1,1,1
db 1,1,1,1
db 1,0,1,1
db 1,1,1,1
db 1,1,1,1
db 1,0,1,1
db 1,0,1,1
db 1,1,0,1
db 1,1,1,1
db 1,1,1,1
db 1,1,0,1
db 1,0,1,1
db 1,1,0,1
db 1,0,1,1
db 1,1,1,1
выводит данные в шестнадцатиричном виде. Запустится во всех творениях мелкософта (возможно кроме 64битных и висты).
Мда Сори забыл тебе ведь по С++ надо. Щас подправим код почуть.
Блин какой-то С++ этот сложный я в нем фиг что могу понять.
[Ответ]
Ну вот почитал msdn насчет inline ассемблера, подправил код. Гнилая винда не захотела перывания обрабатывать пришлось printf использовать.
#include <stdio.h>
class UberClass
{
private:
int palata,mesto;
public:
UberClass();
int GetMesto();
int GetPalata();
};