Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 2
Регистрация: 21.09.2010
Сообщений: 74
1

Объединить два кода в один

21.11.2010, 14:32. Просмотров 1761. Ответов 6
Метки нет (Все метки)


Здравствуйте! Помогите пожалуйста обьеденить два кода в СИ в один. Программы одинаковые, только одна написана без указателей, а вторая с указателями. Надо эти два кода обьеденить в один: чтобы массив вводился один раз, а ответов программа выдавала два: один ответ программы без указателей, второй ответ программы с указателями. Помогите, пожалуйста! Спасибо.

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
#include <conio.h>
#include <stdio.h>
#define n 15
int main(void)
{
    int m[n];
    printf("Bedute 15 elemeHtoB macuBa\n");
    for(int i = 0; i < n; i++)
    {
        printf("mass[%d] = ", i);
        scanf("%d", &m[i]);    
    }
    for(int i = n - 1; i >= 1; i--)
      for(int j = 0; j < i; j++)
      {
       if(m[j] > m[j+1])
       {
          int foo = m[j];
          m[j] = m[j+1];
          m[j+1] = foo; 
       }
      } 
    printf("\n");  
    for(int i = 0; i < n; i++)
    printf(" %d ", m[i]);     
    getch();
    return 0;
}
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 <conio.h>
#include <stdio.h>
#define n 15
int main(void)
{
    int m[n], *mp, *mq;
    printf("Bedute 15 elemeHtoB macuBa\n");
    
    for(mp = m; mp < m + n; mp++)
    {
        printf("mass[%ld] = ", mp - m);
        scanf("%d", mp);
    }
 
 
    for (mp = m + n - 1; mp >= m + 1; mp--) 
        for (mq = m; mq < mp; mq++)
            if (*mq > *(mq + 1)) {
                int foo = *mq;
                *mq = *(mq + 1);
                *(mq + 1) = *mq;
            }
    printf("\n");
 
    for(mp = m; mp < m + n; mp++)
        printf(" %d ", *mp);     
    getch();
    return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.11.2010, 14:32
Ответы с готовыми решениями:

Объединить два массива в один
Помогите кто чем может, не получается объединить два массива в один, оч надо посмотрите кто может...

Объединить два меню пункта в один
Здравствуйте! Столкнулся с такой проблемой - есть меню и в нём есть два пункта, которые надо...

Объединить два массива в один, включив второй массив между k-ым и (k+1)-ым элементами первого массива
Может кто решить ? вовсе не могу понять ... Дано два одномерных масива различной размерности....

Объединить два кода в один
Вот первый код (вычисляет номер минимального по модулю элемента массива) program minelem; var...

__________________
Помогаю в написании курсовых работ и дипломов здесь.
6
Эксперт С++
4710 / 2535 / 753
Регистрация: 18.08.2009
Сообщений: 4,550
21.11.2010, 15:56 2
vovalski,
Цитата Сообщение от vovalski Посмотреть сообщение
чтобы массив вводился один раз, а ответов программа выдавала два: один ответ программы без указателей, второй ответ программы с указателями
Один раз сделали сортировку любым из методов (с указателями или без них), а какой толк тогда от второй сортировки, ведь массив уже отсортирован.
0
0 / 0 / 2
Регистрация: 21.09.2010
Сообщений: 74
21.11.2010, 16:29  [ТС] 3
Это надо для того, чтобы показать что программа с указателями написана правильно и выдаёт такой же ответ как и программа без указателей. То есть надо ввести массив и получить два ответа, которые совпадают и которые доказывают правильность программы с указателями. Я не понимаю как это сделать
0
Эксперт С++
4710 / 2535 / 753
Регистрация: 18.08.2009
Сообщений: 4,550
21.11.2010, 16:43 4
vovalski, Тогда Вам нужно как минимум два массива, При вводе исходных чисел Вы записываете значения сразу в два массива, потом один массив сортируете без указателей, второй с указателями и выводите значения обоих массивов.
0
0 / 0 / 2
Регистрация: 21.09.2010
Сообщений: 74
21.11.2010, 17:23  [ТС] 5
а как это всё записать?
0
Эксперт С++
4710 / 2535 / 753
Регистрация: 18.08.2009
Сообщений: 4,550
21.11.2010, 18:15 6
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
#include <conio.h>
#include <stdio.h>
#define n 15
int main(void)
{
    int m[n], m1[n], *mp, *mq;
    printf("Bedute 15 elemeHtoB macuBa\n");
    for(int i = 0; i < n; i++)
    {
        printf("mass[%d] = ", i);
        scanf("%d", &m[i]);    
        m1[i]=m[i];
    }
    for(int i = n - 1; i >= 1; i--)
      for(int j = 0; j < i; j++)
      {
       if(m[j] > m[j+1])
       {
          int foo = m[j];
          m[j] = m[j+1];
          m[j+1] = foo; 
       }
      } 
    printf("\n");  
    for(int i = 0; i < n; i++)
    printf(" %d ", m[i]);
    // 2-ой вариант
        for (mp = m1 + n - 1; mp >= m1 + 1; mp--) 
        for (mq = m1; mq < mp; mq++)
            if (*mq > *(mq + 1)) {
                int foo = *mq;
                *mq = *(mq + 1);
                *(mq + 1) = *mq;
            }
    printf("\n");
 
    for(mp = m; mp < m + n; mp++)
        printf(" %d ", *mp);     
    
    getch();
    return 0;
}
0
0 / 0 / 2
Регистрация: 21.09.2010
Сообщений: 74
21.11.2010, 18:59  [ТС] 7
большое спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.11.2010, 18:59

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь или здесь.

Как объединить эти два кода в один?
Здравствуйте, уважаемые участники и Администратор сайта. Вопрос такой, как мне объеденить код №1 с...

Объединить 2 кода в один
using System; using System.Collections.Generic; using System.Linq; using System.Text; using...

Объединить два массива в один
Даны одномерные массивы x = {4.1, 16, 0, -3.2, 12} и Y = {4, 5.1, 6}. Нужно объединить их в...

Объединить два класса в один
Здравствуйте! Допустим, есть два класса с 50 одинаковыми свойствами, но во втором классе...

Объединить два проекта С# в один
У меня есть 2 проекта С#. И нужно их объединить в один проект. То есть сделать меню где можно будет...

Объединить два массива в один
Есть два массива: ... $users1 = array(&quot;name&quot; =&gt; &quot;Иван&quot;, &quot;age&quot; =&gt; &quot;20&quot;, &quot;registered&quot;...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.