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

Найти максимальный и минимальный элементы массива до и после удаления - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Аналог меню в консоле http://www.cyberforum.ru/cpp-beginners/thread235075.html
Привет всем Обращаюсь к Вам за помощью Помогите, плиз, разобраться с задачкой. Мне надо сделать аналог менюшки в консоле - верхняя строка должна показывать строку с текущим временем(час,мин,сек). Как реализовать что-то подобное на mainloop Windы в консоле
C++ Решение матричного уравнения Даны массивы C(n) и D(n). Сформировать матрицу A(n,m),как произведение массивов C и DT и матрицу B, элементы которой вычислить по формуле Bij= Aij / min.Решить матричное уравнение (2A-7E)X=B+E, где E – единичная матрица. Пожалуйста,помогите решить задачку на с++ http://www.cyberforum.ru/cpp-beginners/thread235045.html
С++ и линейная алгебра C++
Даны массивы C(n) и D(n). Сформировать матрицу A(n,m),как произведение массивов C и D^T(транспонированная) и матрицу B, элементы которой вычислить по формуле Bij= Aij / min.Решить матричное уравнение (2A-7E)X=B+E, где E – единичная матрица. Срочно требуется помощь в решении!
Считывание из файлов C++
Нужно составить программу на С++, программа считывания из файлов, помогите кто может
C++ Матрица с клавиатуры и с текстового файла? http://www.cyberforum.ru/cpp-beginners/thread235027.html
Нужно написать программу на языке С++. В программе предусмотреть диалог, откуда будут вводится элементы исходной матрицы – с клавиатуры или из текстового файла. Результаты выводить на экран и в результирующий текстовый файл. Матрицу выводить до и после преобразований. Задана матрица В(n,m). Определить количество столбцов, упорядоченных по возрастанию. Каждый второй столбец упорядочить по...
C++ Дана матрица вещественных чисел. Найти максимальный элемент и минимальный элементы матрицы. Дана матрица вещественных чисел. Найти максимальный элемент и минимальный элементы матрицы. Добавлено через 38 секунд решить с файлом плиз подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
 Аватар для Nameless One
5753 / 3402 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
28.01.2011, 15:08     Найти максимальный и минимальный элементы массива до и после удаления
Проверяй:
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
 
#define SIZE 10
#define L_T -15
#define R_T  15
 
void printArray(int* a, size_t size);
void findMinMax(int* a, size_t size, int* minH, int* maxH);
 
int main()
{
    int* pBeg;
    int* pEnd;
    int array[SIZE];
    size_t i;
    size_t size = SIZE;
    int min;
    int max;
        
    srand((size_t) time(NULL));
    for(i = 0; i < SIZE; ++i)
    array[i] = rand() % (R_T - L_T + 1) + L_T;
    puts("Initial array:");
    printArray(array, SIZE);
    for(pEnd = array + SIZE - 1; (pEnd != array) && (*pEnd * *(pEnd - 1) >= 0); --pEnd)
    ;
    for(pBeg = pEnd; (pBeg != array) && (*pBeg * *(pBeg - 1) < 0); --pBeg)
    ;
 
    findMinMax(array, size, &min, &max);
    printf("Max = %d, min = %d\n", max, min);
    
    if(pBeg == pEnd)        /* Если указатели равны, знакоч. ряды не найдены */
    puts("No alternating series has been found."); 
    else
    {
    size -= pEnd - pBeg + 1;
    
    puts("The last alternating series:");
        printArray(pBeg, pEnd - pBeg + 1);
 
    puts("Deleting the alternating series...");
    memmove(pBeg, pEnd + 1, (array + SIZE - pEnd) * sizeof(int));
    printArray(array, size);
 
    if(size)
    {
        findMinMax(array, size, &min, &max);
        printf("Max = %d, min = %d\n", max, min);
    }
    else
        puts("The resulting array is empty.");
    }
        
    exit(0);    
}
 
void printArray(int* a, size_t size)
{
    size_t i;
    
    printf("[%u]{ ", size);
    for(i = 0; i < size; ++i)
    printf("%d ", a[i]);
    puts("}");
}
 
void findMinMax(int* a, size_t size, int* minH, int* maxH)
{
    size_t i;
    *minH = *maxH = *a;
    
    for(i = 1; i < size; ++i)
    {
    if(a[i] < *minH)
        *minH = a[i];
    if(a[i] > *maxH)
        *maxH = a[i];
    }
}
 
Текущее время: 17:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru