![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 05.12.2011
Сообщений: 1
|
![]()
нужно переделать данную задачу, с использованием указателей
Условие: В массиве A=(a1, а2, ..., аn) все элементы, равные нулю, поставить сразу после максимального элемента данного массива. Элементы массива вводить с клавиатуры. Ниже она сделана без указателей: #include "stdafx.h" #include <iostream> #include <math.h> #include <conio.h> using namespace std; void main() { int n, max, i_max, i, j; cout <<"Skolko elementov v massive? " ; cin>>n; int *a=new int[n]; for (int i=0; i<n; i++) { cout<<"Vvedite "<<i+1<<" element massiva"<<endl; cin>>a[i]; } cout<<"Isnachslnii massiv"<<endl; for (int i=0; i<n; i++) cout<<a[i]<<" "; cout<<endl; max=a[0]; i_max=0; int kol=0; // сколько нулей в массиве for (i=0; i<=n; i++) { if (a[i]==0) { for (j=i; j<n-1; j++) a[j]=a[j+1]; i=i-1; kol=kol+1; } } // найдем максимальный элемент for (int i=0; i<n-1; i++) { if (a[i]>max) { max=a[i]; i_max=i; } } i_max++; // сдвигаем массив for (i=1; i<=kol; i++) { for (j=n; j>=i_max; j--) a[j]=a[j-1]; a[i_max]=0; } cout<<"resultati obrabotki"<<endl; for (i=0;i<=n-1; i++) cout<<a[i]<<" "; _getch(); } |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
переписать задачу с Паскаля в Visual C++ | Rexonik | Общие вопросы C/C++ | 10 | 05.12.2011 00:16 |
Надо переписать задачу на си++ | Drago56 | Общие вопросы C/C++ | 6 | 17.12.2010 00:16 |
Переписать задачу из паскаля на СИ | Drago56 | Общие вопросы C/C++ | 1 | 14.12.2010 17:40 |
АТД: Реализация списка с использованием указателей | Suslik963 | Помощь студентам | 1 | 17.11.2010 10:06 |
Переписать программу с использованием функций, С++ | Vikylik | Помощь студентам | 2 | 09.04.2009 10:39 |