![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
Neuch |
![]() ![]()
Сообщение
#1
|
Школьник ![]() Группа: Продвинутые Сообщений: 33 Регистрация: 28.10.2009 Город: Красноярск Учебное заведение: ИКИТ Вы: студент ![]() |
Дана задача сформировать массив и поменять местами в нем последний отрицательный элемент и максимальный положительный элемент местами.
Написал прогу, но не могу найти где ошибся......помогите пожалуйста(IMG:style_emoticons/default/smile.gif) #include<stdio.h> #include<conio.h> #include<stdlib.h> main() { const int N=100; //максимальный размер массива int A[N], i, //индекс элемента массива n, d, //количество элементов в массиве imin, //индекс минимального элемента iotr; //индекс отрицательного элемента printf("Vvedite chislo elementov massiva:"); scanf("%d", &n); for (i=0; i<n; i++) { printf ("Vvedite elementi massiva A[%d%s",i,"]="); scanf("%d", &A[i]); imin=0; //предполагаем что первый элемент минимальный } for (i=0; i<(n-1); i++) { //Если текущий элемент массива меньше минимального, то запоминаем его индекс if (A[imin]<A[i]) imin=i; } if (A[n-1]<0) // проверяем, является ли последнее число в массиве отрицательным { iotr=n-1;} d=A[imin]; A[imin]=A[iotr]; A[iotr]=d; printf("otr %d \n",A[iotr]); printf("min %d \n",A[imin]); printf("Posle perestanovki massiv A[]="); for (i=0; i<n; i++) printf("%d", A[i]); getch(); } |
![]() ![]() |
Neuch |
![]()
Сообщение
#2
|
Школьник ![]() Группа: Продвинутые Сообщений: 33 Регистрация: 28.10.2009 Город: Красноярск Учебное заведение: ИКИТ Вы: студент ![]() |
Вроде исправил....
#include<stdio.h> #include<conio.h> #include<stdlib.h> main() { const int N=100; //ìàêñèìàëüíûé ðàçìåð ìàññèâà int A[N], i, //èíäåêñ ýëåìåíòà ìàññèâà n, d, //êîëè÷åñòâî ýëåìåíòîâ â ìàññèâå imin, //èíäåêñ ìèíèìàëüíîãî ýëåìåíòà iotr; //èíäåêñ îòðèöàòåëüíîãî ýëåìåíòà printf("Vvedite chislo elementov massiva:"); scanf("%d", &n); for (i=0; i<n; i++) { printf ("Vvedite elementi massiva A[%d%s",i,"]="); scanf("%d", &A[i]); imin=0; //ïðåäïîëàãàåì ÷òî ïåðâûé ýëåìåíò ìèíèìàëüíûé } for (i=0; i<n-1; i++) //Åñëè òåêóùèé ýëåìåíò ìàññèâà ìåíüøå ìèíèìàëüíîãî, òî çàïîìèíàåì åãî èíäåêñ if (A[i]<A[imin]) imin=i; if (A[i]<0) iotr=i; // ïðîâåðÿåì, ÿâëÿåòñÿ ëè ïîñëåäíåå ÷èñëî â ìàññèâå îòðèöàòåëüíûì printf("otr %d \n",A[iotr]); printf("min %d \n",A[imin]); d=A[iotr]; A[iotr]=A[imin]; A[imin]=d; printf("Posle perestanovki massiv A[]="); for (i=0; i<n; i++) printf("%d", A[i]); getch(); } |
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 27.5.2025, 17:16 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru