Текст задачи:
Дан массив размера N. Найти два соседних элемента, сумма
которых максимальна, и вывести эти элементы в порядке
возрастания их индексов.
Код решения:
https://pastebin.com/Z5aJCpmW
C/C++
Конвертировать из Pascal в Си
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
int main()
{
int *a, i, imax, max, N, s;
printf("N = ");
scanf("%d", &N);
a = (int*)malloc(N * sizeof(int));
for (i = 0; i < N; i++) scanf("%d", &a[i]);
max = a[0] + a[1];
imax = 0;
for (i = 1; i < N - 1; i++)
{
s = a[i] + a[i + 1];
if (s > max)
{
max = s;
imax = i;
}
}
printf("%d %d\n", a[imax], a[imax + 1]);
}
Или ещё лучше так:
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
int main()
{
int *a, i, imax, max, N, s;
printf("n = ");
scanf("%d", &N);
a = (int*)malloc(N * sizeof(int));
for (i = 0; i < N; i++) scanf("%d", &a[i]);
max = a[0] + a[1];
imax = 0;
for (i = 1; i < N - 1; i++)
{
s = a[i] + a[i + 1];
if (s > max)
{
max = s;
imax = i;
}
}
printf("%d %d\n", a[imax], a[imax + 1]);
if (imax < N - 1)
for (i = imax + 1; i < N - 1; i++)
if (a[i] + a[i + 1] == max)
printf("%d %d\n", a[i], a[i + 1]);
}
#include <malloc.h>
#include <stdlib.h>
int main()
{
int *a, i, imax, max, N, s;
printf("N = ");
scanf("%d", &N);
a = (int*)malloc(N * sizeof(int));
for (i = 0; i < N; i++) scanf("%d", &a[i]);
max = a[0] + a[1];
imax = 0;
for (i = 1; i < N - 1; i++)
{
s = a[i] + a[i + 1];
if (s > max)
{
max = s;
imax = i;
}
}
printf("%d %d\n", a[imax], a[imax + 1]);
}
Или ещё лучше так:
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
int main()
{
int *a, i, imax, max, N, s;
printf("n = ");
scanf("%d", &N);
a = (int*)malloc(N * sizeof(int));
for (i = 0; i < N; i++) scanf("%d", &a[i]);
max = a[0] + a[1];
imax = 0;
for (i = 1; i < N - 1; i++)
{
s = a[i] + a[i + 1];
if (s > max)
{
max = s;
imax = i;
}
}
printf("%d %d\n", a[imax], a[imax + 1]);
if (imax < N - 1)
for (i = imax + 1; i < N - 1; i++)
if (a[i] + a[i + 1] == max)
printf("%d %d\n", a[i], a[i + 1]);
}
Umarbek Orozaliev
Спасибо!
Похожие вопросы
- Актуальность Си и Си++
- Изучение Си/Си++ дорожная карта?
- Возможно ли создание ЯП производительнее Си?
- Си!!! БЕЗ УКАЗАТЕЛЕЙ, ЯЗЫК СИ
- Решить задачу на языке СИ
- Программа на СИ. Циклы с постусловием и предусловием
- Написать код на языке си
- Написать программу на языке Си
- Помогите пожалуйста написать программу на Си
- Как убрать пробел перед ответом (Си)