На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
! Правила раздела
1. Не создавайте несколько одинаковых тем, ибо модератор может расценить их, как спам и удалить все.
2. Для решения задач по GPSS есть отдельная тема. Все задачи по GPSS опубликовывать в этой теме! Перед опубликовыванием вашей задачи просмотрите всю тему, возможно вы сразу найдете решение.
3. Давайте вашим темам ОСМЫСЛЕННЫЕ названия, а также указывайте язык программирования. Пример: [Pascal]:Работа с файлами и записями.
4. Использования тега CODE обязательно при публикации текста программы.

Темы, оформленные с явным игнорированием правил и отсутствием смысла, будут закрыты/удалены!
Вам помогли? Напишите об этом здесь (в портфолио фрилансера)

Фрилансерам:
5. Демпинг цен запрещен (даже если Вы готовы работать бесплатно). Цены обсуждаются в приватном общении. Если вы готовы рещить задачу бесплатно, просто решите ее быстрее, чем возникнет предложение сделать это за деньги.
6. Пользователям, входящим в группу Newbie, запрещается предлагать свои услуги (завуалированно в т.ч.)
7. В посте с предложением выполнить работу, обязательно указывать ссылку на свое портфолио в Отзывы, Благодарности, Портфолио Это правило работает и в том случае, если вы выполняете работу бесплатно.
8. Реклама (даже завуалированная) своих фриланских сайтов запрещена

Нарушение данных пунктов влечет до RO или БАНА (при неоднократом)
Модераторы: ttiger, mikefreelance, Rust
Страницы: (2) [1] 2  все  ( Перейти к последнему сообщению )  
    > помогите пожалуйста написать программы на языке си.
      просто понятия не имею как эти программы писать
      1.Известна информация о багаже (количество вещей и общий вес багажа) 24-х пассажиров. Выяснить, имеется ли хоть один пассажир, багаж которого состоит из од-ной вещи весом менее 25 кг.
      2.Удалить из массива:все элементы, начиная с n1-го по n2-й (n1<=n2).
      3.Изменить знак у максимального по модулю элемента массива. Минимальный элемент массива при этом не определять.
        Ты хочешь научиться, или хочешь просто готовые программы?
        Мои программные ништякиhttp://majestio.info
          1, 2 и 3 связаны между собой или нет?
          Если нет, то 2 так, скажем:
          ExpandedWrap disabled
            #include <stdio.h>
            typedef int T; /* вид данных массива: int - целое число, char - 1-байтное 'число', long-большое число, и т.д. */
            T massiv[10]={3,14,15,92,6,53,58,97,9,-1}; /* массив из 10 элементов */
            void Delete( int n1, int n2)
            {
              memmove( &massiv[n1], &massiv[n2+1], (10-1-n2)*sizeof(T)); /* если n2=9, то всё до хвоста удалили и ничего не надо двигать */
            }
            int main()
            {
              int i;
              for( i=0; i<10; i++) printf("%d\t", massiv[i]); /* пишем до удаления */
              Delete( 3, 7);
              for( i=0; i<10; i++) printf("%d\t", massiv[i]); /* пишем опосля удаления */
            }
            Цитата JoeUser @
            Ты хочешь научиться, или хочешь просто готовые программы?

            мне их надо написать 45 штук. они блоками похоже. я смотрю как сделать и примерно похожие на это делаю. я так учусь

            Добавлено
            Цитата Славян @
            1, 2 и 3 связаны между собой или нет?
            Если нет, то 2 так, скажем:
            ExpandedWrap disabled
              #include <stdio.h>
              typedef int T; /* вид данных массива: int - целое число, char - 1-байтное 'число', long-большое число, и т.д. */
              T massiv[10]={3,14,15,92,6,53,58,97,9,-1}; /* массив из 10 элементов */
              void Delete( int n1, int n2)
              {
                memmove( &massiv[n1], &massiv[n2+1], (10-1-n2)*sizeof(T)); /* если n2=9, то всё до хвоста удалили и ничего не надо двигать */
              }
              int main()
              {
                int i;
                for( i=0; i<10; i++) printf("%d\t", massiv[i]); /* пишем до удаления */
                Delete( 3, 7);
                for( i=0; i<10; i++) printf("%d\t", massiv[i]); /* пишем опосля удаления */
              }

            не связаны. три разных блока это
              3-я так, скажем:
              ExpandedWrap disabled
                #include <math.h>
                float massiv[10]={3,0.14,-0.15,92,-6, 53.58,-97.9,32.38,46.264,3};
                int main()
                {
                 float alexMax=fabs(massiv[0]);
                 int i, obmen=0;
                 for( i=0; i<10; i++) printf("%f\t", massiv[i]); /* пишем до изменения */
                 for( i=1; i<10; i++)
                  if( fabs(massiv[i])>alexMax ) alexMax=fabs(massiv[i]), obmen=i;
                 massiv[obmen] = -massiv[obmen];
                 for( i=0; i<10; i++) printf("%f\t", massiv[i]); /* пишем опосля изменения */
                 return(0);
                }
                Цитата Славян @
                3-я так, скажем:
                ExpandedWrap disabled
                  #include <math.h>
                  float massiv[10]={3,0.14,-0.15,92,-6, 53.58,-97.9,32.38,46.264,3};
                  int main()
                  {
                   float alexMax=fabs(massiv[0]);
                   int i, obmen=0;
                   for( i=0; i<10; i++) printf("%f\t", massiv[i]); /* пишем до изменения */
                   for( i=1; i<10; i++)
                    if( fabs(massiv[i])>alexMax ) alexMax=fabs(massiv[i]), obmen=i;
                   massiv[obmen] = -massiv[obmen];
                   for( i=0; i<10; i++) printf("%f\t", massiv[i]); /* пишем опосля изменения */
                   return(0);
                  }

                так просто?
                  Да нисколько не просто - гляньте сколько строк то вышло!
                  В каком-то языке наверняка такое возможно:
                  massiv.getMax().changeSign();
                  :crazy:
                    Цитата Славян @
                    Да нисколько не просто - гляньте сколько строк то вышло!
                    В каком-то языке наверняка такое возможно:
                    massiv.getMax().changeSign();
                    :crazy:

                    ну впр сам код то не сильно заморочееный
                      1-я:
                      ExpandedWrap disabled
                        #include <stdio.h>
                        typedef struct
                        {
                         int kol;
                         float ves;
                        } BAGAJ;
                        BAGAJ b[24]={{11,1},{2,2},{1,4},...};
                        int main()
                        {
                          int i;
                          for( i=0; i<24; i++)
                            if( b[i].kol==1 ) /* О! всего одна вещь! */
                                if( b[i].ves<25 ) /* ого, лёгкая! */
                                    printf("Багаж №%d нужный!\n",i);
                          return(0);
                        }
                        Цитата Славян @
                        1-я:
                        ExpandedWrap disabled
                          #include <stdio.h>
                          typedef struct
                          {
                           int kol;
                           float ves;
                          } BAGAJ;
                          BAGAJ b[24]={{11,1},{2,2},{1,4},...};
                          int main()
                          {
                            int i;
                            for( i=0; i<24; i++)
                              if( b[i].kol==1 ) /* О! всего одна вещь! */
                                  if( b[i].ves<25 ) /* ого, лёгкая! */
                                      printf("Багаж №%d нужный!\n",i);
                            return(0);
                          }

                        славян вообще красавец. вот что ты не хочешь за это деньги брать?
                          Лучше не уходить болтовнёй в сторону, а то Джо серчать буде! :D
                            Цитата Славян @

                            славян я вот думаю ее можно же сделать так не?
                            ExpandedWrap disabled
                              int main()
                              {
                              int n=24;
                              int b[n];
                              int i;
                              srand(time(NULL));
                              for (i=1;i<n;i++)
                              {
                              b[i]=rand() % 10+24;
                              printf("%d kg\n", b[i]);
                              }
                              i=1;
                              while (i<n)
                              {
                              if (b[i]<25)
                              {
                              printf("est' bagazh massoy menee 25 kg");
                              break;
                              }
                              else i++;
                              }
                               
                              return 0;
                              }


                            Добавлено
                            Цитата Славян @

                            а вот эта неверная. она же не удаляет н
                            Сообщение отредактировано: Qraizer -
                              Цитата alex____666 @
                              я вот думаю ее можно же сделать так не?
                              Ну в принципе, можно. Но есть недостаток: индексы идут с 0, а у вас с 1, так что b[0] не проверится, а это всё же близко к ошибке.
                                M
                                Используем тег [code] для добавления текста программы в пост! Устное предупреждение! Читаем правила!
                                Одни с годами умнеют, другие становятся старше.
                                  Цитата alex____666 @
                                  а вот эта неверная. она же не удаляет
                                  Из массива в Си, насколько я знаю, ничего не удаляется. Так что там у меня просто в ненужные места записываются оставшиеся элементы с хвоста. В каком-то смысле сие похоже на удаление.
                                  В противном случае, надо объяснить, что означает "удалить из массива".
                                  1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                  0 пользователей:


                                  Рейтинг@Mail.ru
                                  [ Script Execution time: 0,1355 ]   [ 14 queries used ]   [ Generated: 20.05.18, 15:49 GMT ]