Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Программирование под Windows > Visual C++
Перезагрузить страницу помогите пожалуйста с программой
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Dezmond_Fox Dezmond_Fox вне форума
Новичок
 
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 02.11.2016
По умолчанию помогите пожалуйста с программой - 02.11.2016, 23:52

Написал прогу по заданию:
даны действительные числа a1 a2...an поменять местами
а)наибольший и наименьший член
б)наибольший и последний


вод код:
Цитата:
#include <iostream>

using namespace std;

int main()
{
setlocale(LC_ALL, "Russian");
int n,i, k, v,min, max;

cout<<"Введите размер массива \n";
cin>> n;
int a[n], b[n];


cout<<"Введите значение а \n";
for ( i=0; i<n; i++)
{cin>>a[i];}

for ( i=0; i<n; i++)
{b[n]=a[n];
b[i]=a[i];}

max=0; min=0;
for(i=1; i<n; i++)
{if(a[i]<a[max]){max=i;}}


for(i=1; i<n; i++)
{if(a[i]>a[min]){min=i;}}
v=a[max];
a[max]=a[min];
a[min]=v;

cout<<"результат: \n";
for(i=0; i<n; i++)
{cout<<a[i]<<endl;}

max=0; v=0;

for(i=1; i<n; i++)
{if(b[i]<b[max]){max=i;}}

for(i=1; i<n; i++)
{if(b[i]==b[n]){n=i;}}
for(i=1; i<n; i++)
{v=b[max];
b[max]=b[n];
b[n]=v;}


cout<<"результат: \n";
for(i=0; i<n; i++)
{cout<<b[i]<<endl;}
system("pause");
return 0;}
Ответить с цитированием
  (#2 (permalink)) Старый
wanja wanja вне форума
Member
 
Сообщений: 583
Сказал(а) спасибо: 1
Поблагодарили 25 раз(а) в 25 сообщениях
Регистрация: 08.05.2005
По умолчанию 03.11.2016, 15:26

И в чём вопрос?
Ответить с цитированием
  (#3 (permalink)) Старый
spider1581 spider1581 вне форума
Member
 
Сообщений: 185
Сказал(а) спасибо: 16
Поблагодарили 20 раз(а) в 19 сообщениях
Регистрация: 24.01.2014
По умолчанию 06.11.2016, 14:12

Ошибки и рекомендации:
1. Зачем вам второй массив? Можно обойтись одним.
2. Зачем вы делаете это
csharp Код:
b[n]=a[n];
?
3. Зачем выделять память под i в начале программы? Это можно сделать в самом цикле...
4. Здесь
csharp Код:
{if(a[i]<a[max]){max=i;}}
и здесь
csharp Код:
{if(a[i]>a[min]){min=i;}}
нарушена логика.
5. Зачем вы два раза ищете максимальный элемент? При том неправильно...
6. Максимальный и минимальный элементы можно найти за 1 цикл.
7. Что такое k?
8. Что это
csharp Код:
for(i=1; i<n; i++)
{if(b[i]==b[n]){n=i;}}
и зачем?
9. Зачем вам целый цикл чтобы поменять два элемента местами?
csharp Код:
for(i=1; i<n; i++)
{v=b[max];
b[max]=b[n];
b[n]=v;}
этим вы перемешиваете весь ваш массив.
10. В общем, целый комплекс ошибок и лишних действий, программа обречена работать некорректно.
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с программой, пожалуйста!!! Rimma С/С++ 3 05.11.2014 16:22
Помогите пожалуйста с программой. massaraksher Prolog 28 19.03.2013 13:33
Помогите с программой пожалуйста!!!! Komediant Prolog 2 19.12.2012 11:56
Помогите, пожалуйста ,с программой D1nochka Prolog 5 26.11.2012 22:22
Помогите пожалуйста разобраться с программой! Me_Sasuke Delphi 0 06.05.2012 14:40
Помогите пожалуйста с программой Вадимко Flash и ActionScript 0 06.02.2012 18:21
Помогите пожалуйста с программой Вадимко Delphi 0 06.02.2012 18:20
Пожалуйста помогите с программой. KaTaRinka Вопросы начинающих программистов 0 12.10.2011 01:37
Пожалуйста помогите с программой. KaTaRinka Вопросы начинающих программистов 0 12.10.2011 01:27
Помогите пожалуйста с программой на Pascal!! AdeptMe Вопросы начинающих программистов 0 15.09.2011 00:30
Помогите с программой пожалуйста Tevad Pascal 4 11.08.2007 20:54



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов