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

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

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

Перевод if(n*n+m*m=i) then if(i<>a[c-1]) на с++ - C++

07.12.2013, 16:40. Просмотров 279. Ответов 9
Метки нет (Все метки)

if(n*n+m*m=i) then
if(i<>a[c-1])
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Михаил Чернобук
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 15
07.12.2013, 16:46 #2
if ((n*n+m*m)==i)&&(i!=a[c-1])) [действия]
ProGrammist95
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 32
07.12.2013, 17:03  [ТС] #3
выдаёт ошибку.


#include <vcl.h>
#include <conio.h>
#include <iostream.h>
{
int i,c,j,m,a[1][100];
for(i=1;i<100;i++)
for(j=1;j<100;j++)
for(m=1;m<100;m++)
if ((j*j+m*m)==i)&(i!=a[c-1]))
{
a[c]=i;
c++;
}
std::cout<<a[i]<<"";
getch();

return 0;
}

Добавлено через 1 минуту
выдаёт ошибку.
#include <vcl.h>
#include <conio.h>
#include <iostream.h>
{
int i,c,j,m,a[1][100];
for(i=1;i<100;i++)
for(j=1;j<100;j++)
for(m=1;m<100;m++)
if ((j*j+m*m)==i)&(i!=a[c-1]))
{
a[c]=i;
c++;
}
std::cout<<a[i]<<"";
getch();

return 0;
}
Михаил Чернобук
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 15
07.12.2013, 17:12 #4
Во-первых пропущен main()
Во-вторых - размерность массива - он двумерный, а Вы присваиваете одномерному
ProGrammist95
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 32
07.12.2013, 17:20  [ТС] #5
исправь пожалуйста
Михаил Чернобук
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 15
07.12.2013, 17:29 #6
Как тут исправлять? Тут ошибка на ошибке, что прога хоть делать должна? Какое условие?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
int main (){
    int i,c,j,m,a[1][100];
    for(i=1;i<100;i++)
        for(j=1;j<100;j++){
            for(m=1;m<100;m++)
                if (((j*j+m*m)==i)&&(i!=a[c-1][j]))
                {
                    a[c][j]=i;
                    c++;
                }
            std::cout<<a[i][j]<<std::endl;
        }
    return 0;
}
ProGrammist95
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 32
07.12.2013, 17:35  [ТС] #7
В возрастающем порядке напечатать из диапазона 1..100, представимые в виде n^2+m^2, где n,m>0
Михаил Чернобук
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 15
07.12.2013, 19:11 #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
int main (){
    int a;
    for ( int i = 1; i<=100; i++){
        for ( int j = 1; j<=10; j++){
            for ( int k = 1; k<=10; k++)
                if ((j*j+k*k == i)&&(a!=i)) {cout<<i<<" = "<<j<<"*"<<j<<"+"<<k<<"*"<<k<<endl; a = i;}
 
        } a = 0;
    }
    return 0;
}
Jupiter
07.12.2013, 19:31
  #9

Не по теме:

Цитата Сообщение от ProGrammist95 Посмотреть сообщение
исправь пожалуйста
тыжпрограммист

ProGrammist95
0 / 0 / 0
Регистрация: 25.03.2013
Сообщений: 32
07.12.2013, 22:06  [ТС] #10
Михаил Чернобук, спасибо большое.
Yandex
Объявления
07.12.2013, 22:06
Ответ Создать тему
Опции темы

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