Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2013, 23:02   #1
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию Сортировка на Си

Здраствуйте уважаемые форумчани . не могли б мне помочь с последним заданием.... Условие:Даны сведения об игрушках - название игрушки, стоимость и возрастные границы (например от 2-5). Сортировать по росту возрастной границы и определить для какого возраста является наиболее игрушек.
Код:
#include "stdafx.h"
 
#include "stdlib.h"
#include<string.h>
#define n 2
//#define tabir "vik.txt"
struct toy
{ char name[20];
 int price;
 int a; 
 int b;
 } toys[n];
void vvod()
{
 int i;
 for (i=0; i<n; i++)
  {
  printf("Enter data toys\n");
  printf("Enter name:\n");
  scanf("%s", toys[i].name);
  printf("Enter price:\n");
  scanf("%d", &toys[i].price);
  printf("Enter vikovi meji:\n");
  scanf("%d %d", &toys[i].a,&toys[i].b); 
  printf("\n");
  }
}
void printrezult()
{int z;
//FILE *fp;
 //fp = fopen(tabir,"a");
  for(z=0;z<n;z++)
  { printf("%s   |   %d   |    %d-%d\n\n",toys[z].name,toys[z].price,toys[z].a,toys[z].b);
  }
  //fclose(fp);
}
 
void swap(toy* a1,toy* a2)
{
    toy temp;
    temp=*a1;
    *a1=*a2;
    *a2=temp;
}
 
void sort(toy* start,toy* end)
{
toy* iter1 = start;
while(iter1<end)
    {
        toy* iter2 = start;
        while(iter2<end)
        {
            if((*iter2).a<=(*(iter2+1)).a)
            {
                swap(iter2,(iter2+1));
            }
            iter2++;
        }
        iter1++;
    }
 
iter1=start;
while(iter1<end)
    {
        toy* iter2 = start;
        while(iter2<end)
        {
            if(((*iter2).a==(*(iter2+1)).a)&&((*iter2).b>=(*(iter2+1)).b))
            {
                swap(iter2,(iter2+1));
            }
            iter2++;
        }
        iter1++;
    }
}
 
 
void main()
{ vvod();
//FILE *fp;
 //fp = fopen(tabir,"w");
 printf("Sort of vikovi meji:\n");
 printf("Name   |    Price   |   Vikovi meji\n");
 //fclose(fp);
 sort(&toys[0], &toys[n-1]);
 printrezult();
}
___________________________________ ________________________
Теперь осталось последнее...определить для какого возраста является наиболее игрушек.
majuw вне форума Ответить с цитированием
Старый 06.05.2013, 11:27   #2
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию

Что никто не может помочь?
majuw вне форума Ответить с цитированием
Старый 06.05.2013, 12:41   #3
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Ну у вас же написана функция Sort(). В чем проблема то?
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 06.05.2013, 14:18   #4
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию

Я просто не понимаю как сделать это определить для какого возраста является наиболее игрушек.
majuw вне форума Ответить с цитированием
Старый 06.05.2013, 14:23   #5
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от majuw Посмотреть сообщение
Я просто не понимаю как сделать это определить для какого возраста является наиболее игрушек.
Ну я так понимаю что нужно определить возрастные границы для которых найдется больше всего игрушек.
Выделить n переменных отвечающих за каждую возрастную группу,
пробежать по всем игрушкам и прибавлять на 1 переменную соответствующую группе игрушки.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 06.05.2013, 15:23   #6
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию

Как бы то понимаю, а вот все это сделать в коде не могу.....
majuw вне форума Ответить с цитированием
Старый 06.05.2013, 15:35   #7
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Цитата:
Сообщение от majuw Посмотреть сообщение
Как бы то понимаю, а вот все это сделать в коде не могу.....
Что мешает?? тут же совсем все просто .. я алгоритм описал ... не смогаете организовать простейший цикл??
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 06.05.2013, 18:11   #8
majuw
Пользователь
 
Регистрация: 04.04.2013
Сообщений: 77
По умолчанию

А все уже сделал.....
majuw вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Быстрая сортировка(сортировка Хоара). Сортировка фрагмента массива [C++] druger Помощь студентам 0 20.04.2012 15:49
Сортировка Шелла и Шейкер-сортировка AleksandrMakarov Паскаль, Turbo Pascal, PascalABC.NET 11 11.03.2012 12:18
Сортировка массива методами предсортировки и слияния, и пирамидальная сортировка. lenny_24 Помощь студентам 2 17.04.2011 18:57
паскаль,одномерный массив,сортировка вставка,сортировка убывания,от максимального до конца немозг Помощь студентам 11 06.02.2010 21:57
Сортировка файлов в Explorer vs сортировка в Delphi mutabor Общие вопросы Delphi 11 04.09.2009 14:32