Форум программистов, компьютерный форум CyberForum.ru

Найти самого молодого родившегося осенью студента - C++

Восстановить пароль Регистрация
 
rom4k102
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 5
15.10.2013, 22:57     Найти самого молодого родившегося осенью студента #1
помогите исправить код
данный код: найти самого молодого родившегося осенью
исправить: найти самого молодого
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
do {fl=0; 
for(i=0;i<n;i++)
if(x[i].year>x[i+1].year)
{ t=x[i]; x[i]=x[i+1]; x[i+1]=t; fl=1; }
else if(x[i].year==x[i+1].year)
{if(x[i].mon<x[i+1].mon)
{ t=x[i]; x[i]=x[i+1]; x[i+1]=t; fl=1; }
else if(x[i].mon==x[i+1].mon)
{if(x[i].day>x[i+1].day)
{t=x[i]; x[i]=x[i+1]; x[i+1]=t; fl=1; }}}
}while(fl==1);
for(i=0;i<n;i++)
if(x[i].mon==9||x[i].mon==10||x[i].mon==11)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.10.2013, 22:57     Найти самого молодого родившегося осенью студента
Посмотрите здесь:

Файлы: отсортировать и найти самого младшего и самого страшего с правами и без прав C++
C++ Найти и вывести на экран самого молодого студента
Найти и вывести на экран самого молодого студента, родившегося осенью C++
C++ Найти и вывести на экран самого молодого студента
Структуры и массивы структур: найти самого старшего студента, родившегося летом C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Folko
 Аватар для Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 22:59     Найти самого молодого родившегося осенью студента #2
rom4k102, оформите, пожалуйста, в тегах и как то поприличнее. Разбираться трудно
rom4k102
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 5
15.10.2013, 23:11  [ТС]     Найти самого молодого родившегося осенью студента #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
do {fl=0; 
for(i=0;i<n;i++)
if(x[i].year>x[i+1].year)
{ t=x[i]; x[i]=x[i+1]; x[i+1]=t; fl=1; }
else if(x[i].year==x[i+1].year)
{if(x[i].mon<x[i+1].mon)
{ t=x[i]; x[i]=x[i+1]; x[i+1]=t; fl=1; }
else if(x[i].mon==x[i+1].mon)
{if(x[i].day>x[i+1].day)
{t=x[i]; x[i]=x[i+1]; x[i+1]=t; fl=1; }}}
}while(fl==1);
for(i=0;i<n;i++)
if(x[i].mon==9||x[i].mon==10||x[i].mon==11)
Добавлено через 43 секунды
Цитата Сообщение от Folko Посмотреть сообщение
rom4k102, оформите, пожалуйста, в тегах и как то поприличнее. Разбираться трудно
Folko
 Аватар для Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 23:28     Найти самого молодого родившегося осенью студента #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
do
{
    fl=0; 
    for(i=0;i<n;i++)
        if(x[i].year>x[i+1].year)
        {
            t=x[i];
            x[i]=x[i+1];
            x[i+1]=t;
            fl=1;
        }
        else
        if(x[i].year==x[i+1].year)
        {
            if(x[i].mon<x[i+1].mon)
            {
                t=x[i];
                x[i]=x[i+1];
                x[i+1]=t;
                fl=1;
            }
            else
            if(x[i].mon==x[i+1].mon)
            {
                if(x[i].day>x[i+1].day)
                {
                    t=x[i];
                    x[i]=x[i+1];
                    x[i+1]=t;
                    fl=1;
                }
            }
        }
}
while(fl==1);
for(i=0;i<n;i++)
    if(x[i].mon==9||x[i].mon==10||x[i].mon==11)
Добавлено через 8 минут
rom4k102, сейчас попробую написать функцию. Я так понимаю, имеется несколько людей с датами рождения, среди которых надо найти самого молодого?
rom4k102
0 / 0 / 0
Регистрация: 01.10.2013
Сообщений: 5
15.10.2013, 23:36  [ТС]     Найти самого молодого родившегося осенью студента #5
да ты прав) могу в лс скинуть тебе полностью программу и посмотришь
Folko
 Аватар для Folko
265 / 253 / 7
Регистрация: 27.09.2013
Сообщений: 877
Записей в блоге: 1
15.10.2013, 23:39     Найти самого молодого родившегося осенью студента #6
Сообщение было отмечено автором темы, экспертом или модератором как ответ
rom4k102, ориентируясь по заданию написал вот такое. Попробуй, проверь, вроде все правильно должно быть.

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
const int n = 10;
 
struct human {
    int day;
    int mon;
    int year;
}
 
int main ()
{
    human x[n];
    // заносим данные
    int min = 0;
    for (int i=1;i<n;i++)
    {
        if (x[i].year > x[min].year) min = i;
        if (x[i].year == x[min].year)
        {
            if (x[i].mon > x[min].mon) min = i;
            if (x[i].mon == x[min].mon)
            {
                if (x[i].day > x[min].day) min = i;         
            } 
        }
    }
}
min - номер в массиве самого молодого (с самой поздней датой)
n - размер массива
Забивание возрастов не написал, там уж на твое усмотрение. Протести, отпишись, получилось ли
Yandex
Объявления
15.10.2013, 23:39     Найти самого молодого родившегося осенью студента
Ответ Создать тему
Опции темы

Текущее время: 00:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru