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

на языке с - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нужно переделать http://www.cyberforum.ru/cpp-beginners/thread62744.html
Дано натуральное число .Установить, является ли последовательность его цифр при просмотре их слева направо упорядоченной по возрастанию.У меня тут есть программа только для четырёхзначного числа # include <iostream.h> # include <windows.h> int main() { SetConsoleOutputCP(1251); int A, a, b, c, d; cout<<"Введите число"; cin>>A;
C++ Массив(Замена выбранных элементов). Область памяти(замена выбранных элементов) Собственно 3 задачи в которых нужна помощь...Может кто нить встречался с таким родом задач? 1.Создать массив из 20 элементов, заменить 5 выбранных пользователем элементов массива и вывести новый на экран. в этой задаче я не могу понять как вывести новый массив из 20 элементов с заменёнными элементами Мой вариант #include "stdafx.h" http://www.cyberforum.ru/cpp-beginners/thread62737.html
C++ Ввести одномерный массив A , вывести его
Помогите пожалуйста если не затруднит. Ввести одномерный массив A , вывести его. Найти наибольший элимент среди тех , которые находятся на нечётных позициях. На полученное значением уменьшить элементы с чётными индексами массива.
Список C++
Дан список, элементы которого являются координатами вектора в n-мерном пространстве. Надо найти длину вектора.
C++ Image->Transparent http://www.cyberforum.ru/cpp-beginners/thread62716.html
Есть у меня два изображения. Мне необходимо, чтобы одно находилось над другим было прозрачным, то есть без белого фона. Установил параметр Transparent в true, но результат не тот, которого я ожидал. Фон убрался не ровно по контуру рисунка, а остался как-бы "квадратами" вокруг рисунка. Подскажите, как сделать, чтоб фон убрался по контуру. Заранее спасибо
C++ класс TАrray Нужно программу, в которой создается шаблонный класс TАrray, реализующий обобщенный массив и функцию – метод сортировки обобщенного массива. Протестировать программу для работы с массивами различных типов: int, char, float. подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
29.11.2009, 21:47     на языке с
Цитата Сообщение от снег Посмотреть сообщение
1.Составить функции определения минимального и максимального элементов в одномерном массиве. Используя их, найти минимум среди максимальных элементов строк матрицы.
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
84
85
86
87
88
89
90
91
92
93
94
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define MAX_VAL 100
#define ROWS 5
#define COLS 10
 
/*
    Составить функции определения минимального и максимального элементов в одномерном массиве.
*/
 
/* возвращает указатель на самый большой элемент в массиве, если их несколько - на первый из них */
const int *maxElement(const int *arr, size_t count){
    const int *pArr, *pMax;
    int max_val;
    
    if ( !arr || !count )
        return NULL;
    
    pMax = arr;
    max_val = *pMax;
    for ( pArr = arr + 1; pArr < arr + count; pArr++ ){
        if ( *pArr > max_val ){
            pMax = pArr;
            max_val = *pMax;
        }
    }
    return pMax;
}
 
/* возвращает указатель на самый маленький элемент в массиве, если их несколько - на первый из них */
const int *minElement(const int *arr, size_t count){
    const int *pArr, *pMin;
    int min_val;
    
    if ( !arr || !count )
        return NULL;
        
    pMin = arr;
    min_val = *pMin;
    for ( pArr = arr + 1; pArr < arr + count; pArr++ ){
        if ( *pArr < min_val ){
            pMin = pArr;
            min_val = *pMin;
        }
    }
    return pMin;
}
 
/*
    Используя их, найти минимум среди максимальных элементов строк матрицы.
*/
 
int main(void){
    int matr[ROWS][COLS];
    int max_vals[ROWS] = { 0 };
    const int *pVal = NULL;
    size_t i, j;
    
    srand(time(NULL));
    /* заполнить матрицу */
    for ( i = 0; i < ROWS; i++ )
        for ( j = 0; j < COLS; j++ )
            matr[i][j] = rand() % MAX_VAL;
    
    /* получить максимальные значения для каждой строки, занести в массив max_vals */
    for ( i = 0; i < ROWS; i++ ){
        if ( (pVal = maxElement(matr[i], COLS)) == NULL ){
            fprintf(stderr, "Shit happens!\n");
            exit(1);
        }
        max_vals[i] = *pVal;
    }
    
    /* вывод матрицы */
    printf("\nOriginal matrix:\n");
    for ( i = 0; i < ROWS; i++ )
        for ( j = 0; j < COLS; j++ )
            printf( ( j < COLS - 1 ) ? "%02d " : "%02d\n", matr[i][j]);
            
    /* максимальные значения для каждого ряда */
    printf("\nMax values for each row:\n");
    for ( i = 0; i < ROWS; i++ )
        printf("%02d ", max_vals[i]);
    printf("\nMinimum from them: ");
    if ( (pVal = minElement(max_vals, ROWS)) == NULL ){
        fprintf(stderr, "Shit happens!\n");
        exit(1);
    }
    printf("%d\n", *pVal);
    
    exit(0);
}
Добавлено через 1 час 12 минут
Цитата Сообщение от снег Посмотреть сообщение
2. Описать массив записей, содержащий информацию об итогах сдачи вами экзаменационных сессий в институте. Определить средний балл.
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
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
#define NAME_LEN 40
 
/*
    Описать массив записей, содержащий информацию об итогах сдачи вами экзаменационных сессий в институте. 
    Определить средний балл
*/
 
typedef struct {
    char name[NAME_LEN];
    int score;
} Subject_t;
 
/* заполняет структуру */
void fillSubject(Subject_t *s){
    printf("Subject name: ");
    if ( fgets(s->name, NAME_LEN, stdin) == NULL ){
        fprintf(stderr, "Error while getting subject name!\n");
        exit(1);
    }
    s->name[strlen(s->name) - 1] = '\0';
    printf("Subject score: ");
    if ( !scanf("%d", &s->score) ){
        fprintf(stderr, "Error while getting subject score!\n");
        exit(1);
    }
    getchar(); /* удалить \n из потока ввода */
}
 
int main(void){
    Subject_t *session = NULL;
    size_t count = 0, i;
    int all_scores = 0;
    double  average_score = 0.0;
    
    printf("Number of subjects: ");
    scanf("%d", &count);
    getchar();
    
    if ( !count ){
        fprintf(stderr, "Bad value for number of subjects!\n");
        exit(1);
    }
    
    if ( (session = (Subject_t*)calloc(count, sizeof(Subject_t))) == NULL ){
        fprintf(stderr, "Memory error!\n");
        exit(1);
    }
    
    for ( i = 0; i < count; i++ )
        fillSubject(session + i);
        
    /* вычисление среднего балла */
    for ( i = 0; i < count; i++ )
        all_scores += (session[i]).score;
    average_score = (double)all_scores / (double)count;
    
    /* вывод */
    printf("\nAll subjects:\n");
    printf("%-40s%-s\n", "Name", "Score");
    for ( i = 0; i < count; i++ )
        printf("%-40s%-d\n", (session[i]).name, (session[i]).score);
    printf("\nAverage score: %.1f\n", average_score);
    
    free(session);
    session = NULL;
    
    exit(0);
}
 
Текущее время: 04:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru