С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 07.12.2017
Сообщений: 7
1

Ошибка вывода

27.12.2017, 09:28. Показов 1106. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание: Patient: Фамилия, Имя, Отчество, Адрес, Номер медицинской карты, Диагноз. Создать массив объектов. Вывести:
а) список пациентов, имеющих данный диагноз;
б) список пациентов, номер медицинской карты которых находится в заданном интервале.

Ошибок нет, но при этом ничего не выводится.
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
 
namespace ConsoleApplication1
{
    class Patient
    {
        public Patient(string name, string address, int cardNumber, string diagnosis)
        {
            Name = name;
            Address = address;
            CardNumber = cardNumber;
            Diagnosis = diagnosis;
        }
        public Patient()
        {
        }
        public string Name;
        public string Address;
        public int CardNumber;
        public string Diagnosis;
 
 
        public override string ToString()
        {
            return string.Format("{0} {1} {2} Адрес: {3} №{4} Диагноз: {5}", Name, Address, CardNumber, Diagnosis);
        }
    }
 
 
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Введите количество пациентов");
            int kolvo = Convert.ToInt32(Console.ReadLine());
            Patient[] patients = new Patient[kolvo];
            for (int i = 0; i < kolvo; i++)
            {
                patients[i] = new Patient();
                Console.WriteLine("Введите Имя, Фамилию и Отчество пациента:");
                patients[i].Name = Console.ReadLine();
                Console.WriteLine("Введите адрес пациента:");
                patients[i].Address = Console.ReadLine();
                Console.WriteLine("Введите номер мед.карты:");
                patients[i].CardNumber = int.Parse(Console.ReadLine());
                Console.WriteLine("Введите диагноз:");
                patients[i].Diagnosis = Console.ReadLine();
            }
 
            for (int i = 0; i < kolvo; i++)
            {
                if (patients[i].Diagnosis == "Язва")
                {
                    Console.WriteLine("Пациент с диагнозом Язва:", patients[i].Name);
                }
 
                //if (patients[i].CardNumber > 100 & patients[i].CardNumber < 200) 
                //  Console.WriteLine("Пациент с номером карты 100-200", patients[i].Name);
            }
            Console.ReadKey();
        }
    }
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.12.2017, 09:28
Ответы с готовыми решениями:

Ошибка вывода названия программы
Нужно менять при каждом запуске рандомный текст в лабел. пробовал это label1.Text =...

Ошибка вывода консоли в форму
Добрый день ещё раз. При написании программы возникла следующая проблема. При запуске...

Двунаправленный список: ошибка вывода в обратном порядке
Здравствуйте. Пишу двунаправленный список. Вот все готово, но ошибка с выводом в обратном порядке. ...

ошибка вывода Label
вопрос тупейший..... &lt;asp:Label runat=&quot;server&quot; ID=&quot;lblDate&quot; Text=&quot;lblDate&quot;&gt;&lt;/asp:Label&gt; -...

4
162 / 150 / 60
Регистрация: 11.01.2016
Сообщений: 1,312
27.12.2017, 09:48 2
Лучший ответ Сообщение было отмечено Ручкин как решение

Решение

Ручкин,

Когда проверяете на диагноз у вас не правильный вывод имени, забыли дописать {0}
C#
1
2
3
4
5
 if (patients[i].Diagnosis == "Язва")
                {
                    //Console.WriteLine("Пациент с диагнозом Язва:", patients[i].Name);
                    Console.WriteLine("Пациент с диагнозом Язва: {0}", patients[i].Name);
                }
1
12 / 12 / 5
Регистрация: 31.10.2015
Сообщений: 39
27.12.2017, 09:49 3
строку 59 замените на

C#
1
Console.WriteLine("Пациент с диагнозом Язва: {0}", patients[i].Name);
*долго ответ писал
1
162 / 150 / 60
Регистрация: 11.01.2016
Сообщений: 1,312
27.12.2017, 09:50 4
Ручкин,
так же можно вывести с помощью конкатенации строк "текст " + "текст"
C#
1
 Console.WriteLine("Пациент с диагнозом Язва: "+ patients[i].Name);
1
152 / 149 / 103
Регистрация: 30.10.2016
Сообщений: 314
27.12.2017, 10:39 5
Для вывода данных о пациентах в методе Main не хватает
C#
1
2
for (int i = 0; i < kolvo; i++)
    Console.WriteLine(patients[i]);
Кроме того вас должна смутить строка return string.Format("{0} {1} {2} Адрес: {3} №{4} Диагноз: {5}", Name, Address, CardNumber, Diagnosis);
{0} - Name
{1} - Address
{2} - CardNumber
{3} - Diagnosis
{4} - ?
{5} - ?

Кликните здесь для просмотра всего текста
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
using System;
 
namespace ConsoleApplication1
{
    class Patient
    {
        public Patient(string name, string address, int cardNumber, string diagnosis)
        {
            Name = name;
            Address = address;
            CardNumber = cardNumber;
            Diagnosis = diagnosis;
        }
        public Patient()
        {
        }
        public string Name;
        public string Address;
        public int CardNumber;
        public string Diagnosis;
 
 
        public override string ToString()
        {
            return string.Format("\nПациент: {0} \nАдрес: {1} \n№ мед карты: {2} \nДиагноз: {3}", Name, Address, CardNumber, Diagnosis);
        }
    }
 
 
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Введите количество пациентов: ");
            int kolvo = Convert.ToInt32(Console.ReadLine());
            Patient[] patients = new Patient[kolvo];
            for (int i = 0; i < kolvo; i++)
            {
                patients[i] = new Patient();
                Console.Write("\nВведите Имя, Фамилию и Отчество пациента: ");
                patients[i].Name = Console.ReadLine();
                Console.Write("Введите адрес пациента: ");
                patients[i].Address = Console.ReadLine();
                Console.Write("Введите номер мед.карты: ");
                patients[i].CardNumber = int.Parse(Console.ReadLine());
                Console.Write("Введите диагноз: ");
                patients[i].Diagnosis = Console.ReadLine();
            }
 
            for (int i = 0; i < kolvo; i++)
                Console.WriteLine(patients[i]);
 
 
            for (int i = 0; i < kolvo; i++)
            {
                if (patients[i].Diagnosis == "Язва")
                {
                    Console.WriteLine("\nПациент с диагнозом Язва: {0}", patients[i].Name);
                }
 
                //if (patients[i].CardNumber > 100 & patients[i].CardNumber < 200) 
                //  Console.WriteLine("Пациент с номером карты 100-200: {0}", patients[i].Name);
            }
            Console.ReadKey();
        }
    }
}


Добавлено через 23 минуты
А если Анкетные данные пациентов выводить не нужно (согласно условию задания), то метод ToString() можно вообще убрать, т.к. в нем просто нет необходимости.
1
27.12.2017, 10:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.12.2017, 10:39
Помогаю со студенческими работами здесь

Ошибка вывода таблицы
Как понял проблема в том что форма авторизации мешает загрузить БД.

Ошибка вывода в Datagrid
Можете пожалуйста помочь решить проблему с datagrid. Я счас пишу программу, в которой я дописываю...

Ошибка вывода значения в TextBox
Приложение электронно-цифровой подписи на базе RSA в MS Visual Studio 2013: не получается вывести...

Ошибка в коде вывода данных из MySQL таблицы
Всем привет. Код должен: 1. Подключиться к БД 2. Считать данные из таблицы &quot;iqaou&quot; и вывести их...

Ошибка вывода начальной страницы asp.net MVC
Здравствуйте! Подскажите как исправить ошибку, захожу в представление, выбираю страничку с которой...

Ошибка при использовании vector (в конце, после вывода результатов выскакивает ошибка, но сам результат коректен)
Суть в следующем, мы считываем введеные значения и выводим этот массив Проблема такова что...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru