0 / 0 / 1
Регистрация: 23.05.2015
Сообщений: 22
1

Структура "Больной"

13.06.2015, 23:12. Показов 1418. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дана информация о больных. Запись имеет вид: фамилия, возраст, пол, давление. Вывести данные о больных женского пола с повышенным давлением (больше 140), затем о мужчинах с пониженным давлением.
Скоро сессия ,а дел не в проворот
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.06.2015, 23:12
Ответы с готовыми решениями:

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

Структура «База», сущности «Универсам» и «Продукты», структура «Товар»
1. Создать структуру «База», включающую не менее 3 полей. 2. Создать сущности «Универсам» и...

структура array предназначена для хранения строки типа char. Структура имеет функцию, которая позволяет изменить символ
структура array предназначена для хранения строки типа char. Структура имеет функцию, которая...

Структура DateTime, битовая структура
Условие: Структура содержит информацию о дате и времени некоторого события: struct datetime...

Структура, доступная из всех файлов проекта ("глобальная" структура)
Есть четыре структуры (body, gun, enemy, st), описанные в main.cpp. К main.cpp подключен хедер...

8
45 / 42 / 48
Регистрация: 13.05.2015
Сообщений: 222
14.06.2015, 00:53 2
Вот вам заготовка. Ваша задача её отдебажить
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
#include "stdafx.h"
#include <iostream>
#include <string>
#include <cstring> 
#include <locale>
 
using namespace std;
using std::wcin;
using std::wcout;
using std::wstring;
 
struct type {
    wstring fam; 
    wstring sex;
    size_t age;
    size_t press;
};
 
void main(void)
{
    wcout.imbue(std::locale("rus_RUS.866"));
    wcin.imbue(std::locale("rus_RUS.866"));
    size_t n;
    wcout << L"Сколько записей о больных необходимо сделать: "; cin >> n;
    type* ill = (type*) malloc(n*sizeo  f(type));
    //запись информации;
    for (size_t i=0; i<n; ++i) {
        wcout << L"Введите фамилию больного: ";
        getline(std::wcin,ill[i].fam);
        wcout << L"Введите возраст больного: ";
        cin >> ill[i].age;
        wcout << L"Введите пол больного (м/ж): ";
        getline(std::wcin,ill[i].sex);
        wcout << L"Введите показания давления больного: ";
        cin >> ill[i].press;
    }
    //вывод информации: ж, давление > 140; м, давление < 140;
    for (size_t i=0; i<n; ++i) {
        if ((ill[i].press>140) && (ill[i].sex==L"ж")) {
        wcout << ill[i].fam << "\t"; cout << ill[i].age << "\t"; wcout << ill[i].sex << "\t"; cout << ill[i].press << "\t";
        }
        if ((ill[i].press<140) && (ill[i].sex==L"м")) {
        wcout << ill[i].fam << "\t"; cout << ill[i].age << "\t"; wcout << ill[i].sex << "\t"; cout << ill[i].press << "\t";
        }
    }
}
0
0 / 0 / 1
Регистрация: 23.05.2015
Сообщений: 22
14.06.2015, 03:14  [ТС] 3
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
#include<iostream.h>
#include<windows.h>
 
struct bolnoy {char surname[20]; int age;char sex[20];int stress;}t[2];
int  N=2,i;
 
int main( )
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  cout<<"Информация о больном: \n";
 for (int i=0; i<N; i++)
 {
 cout<< "\ Фамилия: ";cin >> t[i].surname;
 cout<< "\n Возраст: ";cin >>  t[i].age;
 cout<< "\n Пол: "; cin >> t[i].sex;
 cout<< "\n Давление: "; cin >> t[i].stress;"\n";
 }
 
 for (int i=0; i<N; i++)
 {
 if ((t[i].stress>=140)  &&  (t[i].sex=="Ж")) {cout<<t[i].surname;cout<<t[i].age;}
 if ((t[i].stress<140) &&   (t[i].sex=="М")) {cout<<t[i].surname;cout<<t[i].age; }
 }
 
 system("pause");
 return 0;
 
}
Сложновато то что Вы написали))я не до конца понял,что Вы писали.Я вот попроще сделал в BuildereC++,но информацию не выдает
0
45 / 42 / 48
Регистрация: 13.05.2015
Сообщений: 222
14.06.2015, 03:22 4
XXmenXX, у Вас данные никуда не сохраняются, выводить-то нечего
Нужно создать динамический массив и заносить данные в него.
1
0 / 0 / 1
Регистрация: 23.05.2015
Сообщений: 22
14.06.2015, 03:36  [ТС] 5
Можете подсказать ?никогда с ними не работал
0
45 / 42 / 48
Регистрация: 13.05.2015
Сообщений: 222
14.06.2015, 03:39 6
Либо так, либо так - записи эквивалентны.
C++
1
type* ill = (type*) malloc(n*sizeo  f(type));
C++
1
type* ill = new type[n];
0
What a waste!
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
14.06.2015, 03:41 7
Цитата Сообщение от Mamoruhiko Посмотреть сообщение
записи эквивалентны.
Ну вообще то не эквивалентны, new[] ещё и сконструирует объекты, в отличие от malloc.
0
45 / 42 / 48
Регистрация: 13.05.2015
Сообщений: 222
14.06.2015, 03:46 8
Цитата Сообщение от gray_fox Посмотреть сообщение
new[] ещё и сконструирует объекты, в отличие от malloc.
Можно поподробнее? Я недавно познакомился с malloc, честно говоря
XXmenXX, честно говоря, не понимаю почему нет вывода. Отредактировал свой вариант и Ваш, однако безрезультатно. Сначала подумал, что условие не выполняется, однако это было проверенно и увы, но проблема не в этом.
0
What a waste!
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
14.06.2015, 04:04 9
Цитата Сообщение от Mamoruhiko Посмотреть сообщение
Можно поподробнее?
malloc выделяет блок памяти нужного размера. new[] выделяет блок памяти, достаточный для размещения n объектов указанного типа, и вызывает для каждого объекта конструктор по умолчанию (для нетривиальных типов). По этому в С++ стоит использовать new/new[], т.к. кроме выделения памяти будет так же произведена необходимая инициализация объектов. Как негативный пример: при использовании malloc для выделения массива объектов type (из 2-го поста) не будут вызваны конструкторы для type, соответственно не будут вызваны конструкторы и для полей этого типа, а значит поля fam и sex будут не в консистентном состоянии (как нетривиальные типы, в отличие от остальных типа size_t, которые и не имеют конструктора по сути).

Добавлено через 4 минуты
Цитата Сообщение от XXmenXX Посмотреть сообщение
C++
1
t[i].sex=="Ж"
С-строки так не сравнивают. Используй strcmp:
C++
1
2
3
4
5
#include <cstring>
 
// ....
 
if (std::strcmp(t[i].sex, "Ж") == 0) { /* ... */ }
Добавлено через 1 минуту
+ учитывая использования не-латиницы могут быть "непонятные" проблемы, связанные с кодировкой...
0
14.06.2015, 04:04
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.06.2015, 04:04
Помогаю со студенческими работами здесь

Структура и вложенная структура
Подскажите как сделать задание, такого рода Иванов Математика 80 История 60...

Тип структура. Описать, используя тип структура
Описать, используя тип структура, данные на учеников (фамилия, улица, дом, квартира). Составить...

У здоровых родителей родился больной ребенок
Проблема, собственно, отражена в названии темы. Связаться со школьной учительницой по биологии...

Найдите вероятность того, что этот больной страдал заболеванием K
В специализированную больницу поступают в среднем 50% больных с заболеванием K, 30% — с...

Опять по больной теме терминальной печати в window server 2012R2
В конторе стоял терминальный сервер на 2003 при установленном screw driver'е проблем практически ни...

Новая фишка Яши? Или это мой больной мозг шалит!
Давно уже заметил что яша сейчас стал для всех или подчти для всех выводить в индекс две главных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

Новые блоги и статьи
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
Как написать микросервис на Go/Golang с Kafka, REST и GitHub CI/CD
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C# с RabbitMQ, CQRS, Swagger и CI/CD
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента! 4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве). Первое вводное занятие. . .
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru