Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
oGvDo
0 / 0 / 0
Регистрация: 13.11.2011
Сообщений: 11
#1

Не правильно выводит ответ на экран - C++

16.12.2011, 13:55. Просмотров 379. Ответов 8
Метки нет (Все метки)

Даны 2 одномерных массива (вводятся с клавиатуры), проверить, являются ли элементы 2-го, квадратами элементов 1-го массива. Проблема с выводом ответа, как сделать так, чтобы при выполнении условия: Выводило "Да являются квадратами", если не выполняется то: "Не являются".
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
#include <iostream.h>
#include <conio.h>
#include <math.h>
int*initAr (int n)
 {
  int*b = new int[n];
  for (int i=0; i<n; i++)
  cin>>b[i];
  return b;
 }
  void main(void)
  {
   int n;
   cout<<"Vvedite kollichestvo elementov:";
   cin>>n;
   cout<<"Zapolnite massiv 1: \n";
   int*Ar1 = initAr(n);
   cout<<"Zapolnite massiv 2: \n";
   int*Ar2 = initAr(n);
    for (int i = 0;i<n;i++)
 
    if (Ar1[i]==pow(Ar2[i],2))
    cout<<"Da,yavlyautsya kvadratami";
    else cout << "Net,ne yavlyautsya kvadratami"<<endl;
    getch();
    }
Миниатюры
Не правильно выводит ответ на экран  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2011, 13:55     Не правильно выводит ответ на экран
Посмотрите здесь:

Не правильно выводит ответ, найти нули в сроке матрицы - C++
Вот задача: Дана матрица MxN, если в строке все ноли вывести 1, если нет ноля или не все ноли вывести 0 на экран. Вот я код написал...

Не правильно выводит на экран - C++
Написал программу, которая должна перевернуть текст в обратном порядки но возникла проблема (например: qwerty должно вывести ytrewq ), не...

Написать программу, которая выводит пример на вычитание, запрашивает ответ пользователя, проверяет его и выводит сообщение о правильности - C++
Написать программу, которая выводит пример на вычитание (в пределах 100), запрашивает ответ пользователя, проверяет его и выводит сообщение...

выводит неверный ответ - C++
#include &lt;iostream.h&gt; #include &lt;stdio.h&gt; const int n = 100; int main (int argc, char * const argv) { int x; cout &lt;&lt; &quot;введите...

Неправильно выводит ответ - C++
#include &quot;iostream&quot; using namespace std; int main () { int a, i, l, n,d=0; cin&gt;&gt;n; for (i=0; i&lt;n; i++) {for(l=0; l&lt;n; l++) ...

Code::Blocks выводит не правильный ответ - C++
Выводит не правильный ответ. Как исправить ошибку ?

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Wanderer1
23 / 23 / 4
Регистрация: 26.03.2011
Сообщений: 54
16.12.2011, 14:18     Не правильно выводит ответ на экран #2
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
#include <iostream.h>
#include <conio.h>
#include <math.h>
int*initAr (int n)
 {
  int*b = new int[n];
  for (int i=0; i<n; i++)
  cin>>b[i];
  return b;
 }
  void main(void)
  {
   int n,count=0;
   cout<<"Vvedite kollichestvo elementov:";
   cin>>n;
   cout<<"Zapolnite massiv 1: \n";
   int*Ar1 = initAr(n);
   cout<<"Zapolnite massiv 2: \n";
   int*Ar2 = initAr(n);
    for (int i = 0;i<n;i++)
 
    if (Ar1[i]==pow(Ar2[i],2)) count++;
    if (count==n)
    cout<<"Da,yavlyautsya kvadratami";
    else cout << "Net,ne yavlyautsya kvadratami"<<endl;
    getch();
    }
попробуй так.
да и, мне кажется pow(Ar2[i],2) возводит в квадрат элемент второй матрицы, а не первой...
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
16.12.2011, 14:58     Не правильно выводит ответ на экран #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
for(int i = 0;i < n;++i)
{
   if(Ar1[i] != Ar2[i]*Ar2[i])
   {
      cout << "Net,ne yavlyautsya kvadratami" << endl;
      getch();
      return;
   }
}
 
cout << "Da,yavlyautsya kvadratami";
getch();
return;
oGvDo
0 / 0 / 0
Регистрация: 13.11.2011
Сообщений: 11
16.12.2011, 16:19  [ТС]     Не правильно выводит ответ на экран #4
Wanderer1, не, чет не пашет. Всегда выдает "Da,yavlyautsya kvadratami", даже если не являются.
Wanderer1
23 / 23 / 4
Регистрация: 26.03.2011
Сообщений: 54
16.12.2011, 16:29     Не правильно выводит ответ на экран #5
Цитата Сообщение от oGvDo Посмотреть сообщение
Wanderer1, не, чет не пашет. Всегда выдает "Da,yavlyautsya kvadratami", даже если не являются.
вот это означает, что элемент первой матрицы являтся квадратом элемента второй матрицы
C++
1
if (Ar1[i]==pow(Ar2[i],2))
для твоей задачи нужно изменить эту строку на
C++
1
if (Ar1[i]*Ar1[i]==Ar2[i])
oGvDo
0 / 0 / 0
Регистрация: 13.11.2011
Сообщений: 11
16.12.2011, 16:42  [ТС]     Не правильно выводит ответ на экран #6
Все, работает! Спасибо!
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.12.2011, 19:33     Не правильно выводит ответ на экран #7
Цитата Сообщение от I.M. Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
for(int i = 0;i < n;++i)
{
   if(Ar1[i] != Ar2[i]*Ar2[i])
   {
      cout << "Net,ne yavlyautsya kvadratami" << endl;
      getch();
      return;
   }
}
 
cout << "Da,yavlyautsya kvadratami";
getch();
return;
нужно выставить флаг, а после цикла проверять его
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
16.12.2011, 19:42     Не правильно выводит ответ на экран #8
Цитата Сообщение от accept Посмотреть сообщение
нужно выставить флаг, а после цикла проверять его
Зачем??? Тот кусок кода, что Вы скопировали рабочий
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.12.2011, 20:19     Не правильно выводит ответ на экран
Еще ссылки по теме:

Испраить ошибку - не считает(не выводит ответ) - C++
привет вам программисты) написал прогу, все запускается но почемуто не считает(не выводит ответ), просьба помочь. врт прога: ...

у меня она работает, но не тот ответ выводит - C++
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; const int m=4, n=5, r=6; const int maxmn = (m&gt;n) ? m : n; const int maxnr = (n&gt;r) ? n : r; ...

Не могу понять ошибку .Не выводит ответ задачи - C++
#include &lt;iostream&gt; using namespace std; int main () { setlocale (LC_ALL,&quot; &quot;); int st,str,n,k=0; cout &lt;&lt; &quot;Vvedite chislo...

Разработать программу которая выводит на экран, которая выводит содержимое текущего каталога, упорядоченное по времени - C++
Помогите пожалуйста!! В уинвере не изучали язык С++ а заставляют на нем написать программку (( В общем то вот такую: Разработать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
16.12.2011, 20:19     Не правильно выводит ответ на экран #9
Цитата Сообщение от go Посмотреть сообщение
Зачем??? Тот кусок кода, что Вы скопировали рабочий
в нём копипаст
Yandex
Объявления
16.12.2011, 20:19     Не правильно выводит ответ на экран
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru