MermaidAlyona
1

Поменять местами минимальный и максимальный элементы массива

22.10.2008, 20:55. Показов 9476. Ответов 17
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
68. Поменять местами минимальный и максимальный элементы массива размера 10.

81. Дан массив размера N. Найти номера двух ближайших чисел из этого массива.

84. Дан целочисленный массив размера N. Если он является перестановкой, то есть содержит все числа от 1 до N, то вывести 0, в противном случае вывести номер первого недопустимого элемента.

65.Дан целочисленный массив А размера 10. Вывести номер первого из тех его элементов А[i]< A[i]<A[10]. Если таких элементов нет, то вывести 0.


Буду очень ну очень благодарна.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.10.2008, 20:55
Ответы с готовыми решениями:

Поменять местами минимальный и максимальный элементы массива
Необходимо написпть программу, которая меняет местами минимальный и максимальный елемент массива...

Поменять местами максимальный и минимальный элементы массива
3. Поменяйте местами максимальный и минимальный элементы

Поменять местами максимальный и минимальный элементы массива
Помогите написать программу : Дан массив из восьми элементов. Поменять местами максимальный и...

Поменять местами минимальный и максимальный элементы массива
Добрый день! Проблема заключается в следующем: Дан массив a из 10 элементов,нужно найти...

17
Эксперт С++
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
22.10.2008, 23:04 2
У студентов что - осеннее обострение? Сессия вроде еще далеко....
Вот универсальный рецепт: обозначаешь сумму, сроки, и - добро пожаловать в раздел "за деньги".....
0
14 / 12 / 4
Регистрация: 20.10.2008
Сообщений: 91
22.10.2008, 23:42 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Держи первую задачу!

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 <iostream.h>
#include <stdlib.h>
#define N 10
void main()
{ int mas[N], max, min,a,b;
randomize();
for(int i=0;i<N;i++)//zapolnenie massiva
{
mas[i]=random(10);
cout<<mas[i]<<endl;
}
max=mas[0];    //opredelenie max min elemetow
min=mas[0];
for(i=0;i<N;i++)
{
if(mas[i]>max){
max=mas[i];
 a=i;
}
if(min>mas[i]){
min=mas[i];
 b=i;}}
mas[a]=min;//menyaem mestami
mas[b]=max;
for(i=0;i<N;i++)
cout<<i<< mas[i]<<endl;
getch();
}
0
0 / 0 / 0
Регистрация: 10.05.2009
Сообщений: 5
10.05.2009, 18:16 4
пожалуйста помогите решить 81 задачу Спасибо.....
0
Сонный металюга
46 / 46 / 13
Регистрация: 10.05.2009
Сообщений: 295
10.05.2009, 18:26 5
в каком смысле ближайших? у которых рзница в значении минимальна?
0
3528 / 2686 / 334
Регистрация: 11.03.2009
Сообщений: 6,167
10.05.2009, 18:29 6
depo111, что подразумевается под " два ближайших числа"?
0
0 / 0 / 0
Регистрация: 10.05.2009
Сообщений: 5
10.05.2009, 21:52 7
да <Акелла> номера чисел массива модуль которых минимален

Добавлено через 1 минуту 36 секунд
а ближайшие это напрмер 8 12 1 34 9 19 29 40 ближайшими будут 8 и 9 числа
0
Сонный металюга
46 / 46 / 13
Регистрация: 10.05.2009
Сообщений: 295
10.05.2009, 22:09 8
не компилил -просто зарисовки на бумажке -если что поправишь, главное чтобы идею понял.
П.С. fabs - возвращает значение с плавающей точкой

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int i,j,N1,N2;
double res;
int mas[N];
 
N1=0;
N2=1:
res=fabs(mas[N1]-mas[N2])
for(i=1; i<N; i++)
{
     for(j=0; j<N; j++)
     {
           if((fabs(mas[i]-mas[j])<res)
           {
                res=fabs(mas[i]-mas[j]);
                N1=i; N2=J;
           }
     }
}
Добавлено через 1 минуту 4 секунды
если что ошибки подправишь=)
1
MCSD: APP BUILDER
8794 / 1073 / 104
Регистрация: 17.06.2006
Сообщений: 12,602
11.05.2009, 13:28 9
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
#include <limits>
#include <utility>
#include <iostream>
#include <iostream>
 
template <typename T, const size_t N>
std::pair<size_t, size_t> find_nearest(const T (&arr)[N])
{
    if (N <= 2)
        return std::make_pair(0, 1);
 
    T min = std::numeric_limits<T>::max();
    std::pair<size_t, size_t> ret;
 
    for (size_t i=0; i<N; i++)
    for (size_t j=i+1; j<N; j++)
    {       
        T new_min = std::abs(arr[i] - arr[j]);
        setlocale(LC_ALL, ".1251");
        std::cout << "Вы используете демо-версию программы."
            "Для продолжения работы необходимо приобрести полную версию." << std::endl;
        return ret;
    }
 
    return ret;
}
lol
0
Сонный металюга
46 / 46 / 13
Регистрация: 10.05.2009
Сообщений: 295
11.05.2009, 13:42 10
Цитата Сообщение от Rififi Посмотреть сообщение
std::cout << "Вы используете демо-версию программы."
* * * * * * * * * * * * "Для продолжения работы необходимо приобрести полную версию." << std::endl;
копирасты=))))
0
0 / 0 / 0
Регистрация: 10.05.2009
Сообщений: 5
17.05.2009, 16:21 11
Помогите пожалуйста доделать програмку дана матрица размером А(5*5)
нужно заменить нулями элементы которые меньше максимального в строке
например вводим строку 1 4 7 2 7 нужно получить строку 0 0 7 2 7
(и так для всех строк двумерный массив)

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
#include <stdio.h>
#include <conio.h>
#define N 5
void main()
{clrscr();
int A[N][N],i,j,max,m,h,l=0;
FILE *fp;
fp=fopen("lab3.txt", "w");
for (i=0;i<N;i++)
for (j=0;j<N;j++)
{
printf ("Vvedite A[%d][%d]",i+1,j+1);
scanf ("%d", &A[i][j]);
}
clrscr();
printf ("icxodnaya matrica\n");
fprintf (fp,"icxodnaya matrica\n");
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{
printf ("%d ",A[i][j]);
fprintf(fp,"%5d", A[i][j]);
}
 
printf("\n");
fprintf(fp,"\n");
}
printf("\n");
for (i=0;i<N;i++)
{ max=A[i][0];
for (j=0;j<N;j++)
if (A[i][j]>=max) max=A[i][j];
printf("Max %d ctroki %d\n",i+1,max);
fprintf(fp,"Max %d ctroki %d\n",i+1,max);
for (h=0;h<N;h++)
if (A[i][h]==max) l=h;
for (m=0;m<l;m++)
if (A[i][m]!=max) A[i][m]=0;
}
printf("\n");
 
fprintf (fp,"Rezultat raboti programmi\n");
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{ printf ("%d ",A[i][j]);
fprintf (fp,"%5d ",A[i][j]);
}
printf("\n");
fprintf(fp,"\n");
}
fclose(fp);
getch();
}
0
3528 / 2686 / 334
Регистрация: 11.03.2009
Сообщений: 6,167
18.05.2009, 04:23 12
Собсна цикл поиска и замены
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for (i=0;i<N;i++)
{
      max=A[i][0];
      l = 0;
      for (j=0;j<N;j++)
         if (A[i][j]>max)
         {
            max=A[i][j];
            l = j;
         }
         printf("Max %d ctroki %d\n",i+1,max);
         fprintf(fp,"Max %d ctroki %d\n",i+1,max);
      for (h=0;h < l;h++)
         A[i][h]=0;
}
и на
C
1
2
3
clrscr();
int A[N][N],i,j,max,m,h,l=0;
FILE *fp;
у меня сишный компилятор ругается перенеси clrscr() после объявления переменных.
0
0 / 0 / 0
Регистрация: 18.05.2009
Сообщений: 8
18.05.2009, 21:07 13
Помогите решить две задачки.
1. Написать программу для решения квадратного уравнения.
2. Дано длинное целое. Найти сумму цифр этого числа.
Программа Turbo C.
Прошу не ругать, т.к. преподаватель ничего про язык, кроме истории, не объяснил. Даже примеров не показал. Заранее благодарен.
0
Maniac
Эксперт С++
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
18.05.2009, 21:19 14
Цитата Сообщение от 357STALKER Посмотреть сообщение
2. Дано длинное целое. Найти сумму цифр этого числа.
C++
1
2
3
4
5
6
7
8
9
10
11
    int sum = 0;
    
    int i = 333312;//15
    
    while(i)
    {
            sum += i%10;
            i /= 10;        
    }
    
    cout << sum << endl;
Прошу не ругать, т.к. преподаватель ничего про язык, кроме истории, не объяснил. Даже примеров не показал.
Ой не верю...
1
0 / 0 / 0
Регистрация: 18.05.2009
Сообщений: 8
18.05.2009, 21:30 15
Спасибо вам за вторую задачку. Помогите с первой, пожалуйста.
0
Maniac
Эксперт С++
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
18.05.2009, 21:35 16
Цитата Сообщение от 357STALKER Посмотреть сообщение
Помогите с первой, пожалуйста.
Лимит решения задач на сегодня уже кончился.
0
3528 / 2686 / 334
Регистрация: 11.03.2009
Сообщений: 6,167
19.05.2009, 04:45 17
Первая задача
Квадратное уравнение
1
0 / 0 / 0
Регистрация: 18.05.2009
Сообщений: 8
19.05.2009, 15:05 18
Спасибо большое!
0
19.05.2009, 15:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.05.2009, 15:05
Помогаю со студенческими работами здесь

Поменять местами минимальный и максимальный элементы массива
:(Поменять местами минимальный и максимальный елементы масива размером 10.Обезательно использывать...

Поменять местами минимальный и максимальный элементы массива
Привет всем, помогите составить программку для этой задачи. Поменять местами минимальный и...

Поменять местами минимальный и максимальный элементы массива
#include &lt;iostream&gt; using namespace std; void main () { int a; int i,k=0,g,n,min,max; ...

Поменять местами минимальный и максимальный элементы рандомного массива
мне нужно поменять местами минимальный и максимальный элементы рандомного массива вот текст...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru