Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Pascal ABC Найти минимальный элемент того столбца массива, который имеет наибольшую сумму абсолютных величин https://www.cyberforum.ru/ pascalabc/ thread1957533.html
Дан массив X(N,M).Найти минимальный элемент того столбца ,который имеет наибольшую сумму абсолютных величин элементов.
Среди элементов нечётных столбцов массива найти сумму отрицательных элементов Pascal ABC
Дан массив Х(N,М). Среди элементов нечетных столбцов массива найти сумму отрицательных элементов.
Pascal ABC Сформировать новый массив из квадратов нечётных элементов исходного массива Дан целочисленный массив X(N). Сформировать массив Y из квадратов нечетных элементов массива Х. https://www.cyberforum.ru/ pascalabc/ thread1957530.html Pascal ABC Составить программу, которая демонстрирует разложение белого света в призме Составить программу на Паскале,которая демонстрирует разложение белого света в призме при этом используя циклы используя циклы! Преломленные лучи:красный,жёлты,синий Цвета задается константами стандартных цветов. https://www.cyberforum.ru/ pascalabc/ thread1957448.html
Pascal ABC Обратный и дополнительный код
Помогите, пожалуйста, реализовать такую программу "Представление двоичных положительных и отрицательных чисел в обратном и дополнительном кодах".
Pascal ABC Построить график функции Построить график y=e^x*sin(x) на промежутке с шагом pi/10 https://www.cyberforum.ru/ pascalabc/ thread1957242.html
Pascal ABC Формирование списков учеников школы формирования списков учеников школы с последующей выборкой отдельных учеников по заданному значению возраста. Результаты вывести на экран в виде анкеты. https://www.cyberforum.ru/ pascalabc/ thread1957202.html Pascal ABC Найти максимум среди всех локальных минимумов
Элемент двухмерного массива называется локальным минимумом, если он строго меньше всех имеющихся у него соседей. Подсчитать количество локальных минимумов заданной матрицы размером NxN найти максимум среди всех локальных минимумов.
Pascal ABC Составить подпрограмму нахождения индексов максимального элемента матрицы Используя такую подпрограмму найти скалярное произведение строки на столбец заданной квадратной матрицы В с номерами, соответственно равными индексам ее максимального элемента -0,0004 2,5 6,21 В= 19 -45,1 0 -2,75 5,7 12,9 https://www.cyberforum.ru/ pascalabc/ thread1957028.html Pascal ABC Составить программу вычисления функции и вывести результаты Используя метод нисходящего проектирования, разработать схему алгоритма и составить программу вычисления функции при заданных значениях аргументов. Результаты вычислений напечатать: z=\begin{cases}a\ln x & \text{ if } x\geq a \\\\x\ln a & \text{ if } x\,<\,a \end{cases}\ \ \ \ x=1(0.5)3\ \ \ \ a=2 Для вычисления ln x воспользоваться равенством \ln x\approx... https://www.cyberforum.ru/ pascalabc/ thread1956970.html
Pascal ABC Исключить из файла компоненты, которые меньше предыдущей компоненты
исключить из файла компоненты,которые меньше предыдущей компоненты. прошу,попонятнее и полегче..
Pascal ABC Объедините две программы https://www.cyberforum.ru/ pascalabc/ thread1956939.html
нужна программа реализации операции умножения в любой с/с имеются две программы: program umnozhenie; var a, b, c: real; begin writeln ('Введите первое число'); readln (a); writeln ('Введите второе число'); readln (b);
0 / 0 / 0
Регистрация: 09.11.2015
Сообщений: 39
0

Односвязный список. Максимальный элемент - Pascal ABC - Ответ 10316250

10.04.2017, 20:24. Показов 1385. Ответов 1
Метки (Все метки)

Author24 — интернет-сервис помощи студентам
Что-то не вдупляю. Пытаюсь найти и вывести максимальный элемент списка. Ошибка в проверке на пустой список. Как исправить можно? Или дело в условии мб?
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
#include <iostream>
using namespace std;
 
struct A
{
    int key; //поле key
};
 
struct List // создание списка
{
    A a; // элемент структуры
    List* next; // указатель на следующий элемент списка
};
 
void Print(List *b)//вывод списка, это функция не меняет список
{
    List *print = b; // создаем вспомогательный указатель, указывает на первый элемент b
    while (print)
    {
        cout << print->a.key << " -> ";
        print = print->next;
    }
    cout << "NULL\n";
}
 
void Init(List **begin)
{
    *begin = new List; // создаем первый элемент списка
    A a[5] = { 23,38,47,79,98 }; //инициализация структуры
 
    (*begin)->a.key = 20; // присвоили значение в адрес
    (*begin)->next = NULL; // следующий адрес пока не известен
 
    List *end = *begin; // указатель на конец списка
 
    for (int i(0); i < 5; i++)
    {
        end->next = new List; // есть следующий элемент списка
        end = end->next;
        end->a = a[i]; // вносим значения
        end->next = NULL;
    }
}
 
void Insert(List **begin, const A &a)
{
    List *ins = new List;
    ins->a = a;
    if (*begin == NULL)
    {
        ins->next = NULL;
        *begin = ins;
        return;
    }
 
    List *t = *begin;
    if (t->a.key >= ins->a.key) // если первый элемент больше вставляемого элемента..
    {
        ins->next = t;
        *begin = ins;
        return;
    }
 
    List *t1 = t->next;
    while (t1)
    {
        if (t->a.key < ins->a.key && ins->a.key <= t1 ->a.key )
        {
            t->next = ins;
            ins->next = t1;
            return;
        }
        t = t1;
        t1 = t1->next;
    }
    t->next = ins;
    ins->next = NULL;
}
 
void Delete(List **begin, const A &a)
{
    if (*begin == NULL)
    {
        return;
    }
    List *t = *begin;
    if (t->a.key == a.key)
    {
        *begin = t->next;
        delete t;
        return;
    }
    List *t1 = t->next;
    while (t1)
    {
        if (t1->a.key == a.key)
        {
            t->next = t1->next;
            delete t1;
            return;
        }
        t = t1;
        t1 = t->next;
    }
}
 
void Free(List **begin)
{
    if (*begin == 0) return;
    List *p = *begin;
    List *t;
    while (p)
    {
        t = p;
        p = p->next;
        delete t;
    }
    *begin = NULL;
}
 
int MaxElem(List **begin)
{
    int max;
 
    if (*begin == NULL)
        return;
 
    List *t = *begin;
    max = t->a.key;
    while (t != NULL)
    {
        if (t->a.key > max)
            max = t->a.key;
            t = t->next;
    }
    return max;
}
 
int main()
{
    
    List* begin = NULL;// указатель на первый элемент списка
    A a = { 86 }, b = { 79 };
    Init(&begin);
    Print(begin);
    Insert(&begin,a);
    Print(begin);
    Delete(&begin, b);
    Print(begin);
    Free(&begin);
    Print(begin);
    int max = MaxElem(&begin);
    cout << max;
    cout << endl;
    system("pause");
    return 0;
}


Вернуться к обсуждению:
Односвязный список. Максимальный элемент Pascal ABC
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.04.2017, 20:24
Готовые ответы и решения:

Односвязный список: удалить k-й элемент и вставить m элементов в конец
Необходимо создать односвязный список с полями ФИО, дата рождения, ЗП удалить к-й элемент и...

Односвязный список: аменить каждый элемент списка, состоящий из символов, на предыдущий символ алфавита
Ребят помогите кто ( Заменить каждый элемент списка, состоящий из символов, на предыдущий символ...

В целочисленном массиве M(n) найти максимальный элемент среди четных элементов массива и максимальный элемент
В целочисленном массиве M(n) найти максимальный элемент среди четных элементов массива и...

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

1
10.04.2017, 20:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.04.2017, 20:24
Помогаю со студенческими работами здесь

Какой из элементов больше: максимальный элемент главной или максимальный элемент побочной диагонали
Для матрицы размерностью n×n (n – нечетное значение) определить, какой из элементов больше:...

Дан список L, элементы которого являются действительными числами. Удалить максимальный элемент
Дан список L, элементы которого являются действительными числами. Удалить максимальный элемент

В массиве найти максимальный элемент в первой половине и максимальный элемент во второй
Доброго времени суток! НЕ могу написать код программы к задаче все не удачные попытки написания...

Найти максимальный элемент массива и его индекс. Максимальный элемент я нашел , не получается вывести индекс
var i,max: integer; x: array of integer; begin randomize; max:=x; for i:=1 to 5 do begin...

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