Одномерные массивы

  • Автор темы BoSSea
  • Дата начала
B

BoSSea

Гость
#1
Дан массив из н элементов , создать программу которая выводит на экран все одинаковые элементы.
Помогите где ошибка ? ... спс заранее

<!--shcode--><pre><code class='sql'>#include<stdio.h>
#include<conio.h>
void main()
{ clrscr(); int a[10],x[10],j,i,n;
printf("vedite n= ");
scanf("%d",&n);
for (i=0;i<n;i++)
{
printf("a[%d]=",i);
scanf("%d",&a);}
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{if (a==a[i+1]) i++;
x[j]=a; j++;}
printf("elemente cotorie povtoreaiutsea : %d",x[j]);
getch();
}[/CODE]
 

DarkKnight

Well-Known Member
01.08.2010
653
0
#2
Держи...
C++:
#include<stdio.h>
#include<conio.h>
void main()
{ 
//clrscr(); 
int a[10],x[10],j,i,n;
printf("vedite n= ");
scanf("%d",&n);
for (i=0;i<n;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
}
int pos = 0;
for(i=0;i<n;i++)
//for(j=0;j<n;j++)
for (int j = i+1; j<n; j++)
{
//if (a[i]==a[i+1]) i++;
if (a[i] == a[j])
{
bool isUse = false;
for (int k = 0; k<pos;k++)
if (a[i] == x[k]) isUse=true;
if (!isUse)
{
x[pos]=a[i];
pos++;
break;
}
}
}
printf("elemente cotorie povtoreaiutsea :");
for (int i = 0; i<pos; i++)
printf("\t %d",x[i]);
getch();
}
 
B

BoSSea

Гость
#3
C - не принимает "Bool" ни "true" ни "isUse"дает ошибку ...
 

hosm

* so what *
18.05.2009
2 442
9
#4
ну так в чем траблы? сделай int, используй значения 0, 1 и проверку на равенство.
 

DarkKnight

Well-Known Member
01.08.2010
653
0
#5
2BoSSea: Ну что разобрался?

C - не принимает "Bool" ни "true" ни "isUse"дает ошибку ...
А вот это ты про какие то "нововведения" пишишь ;-))) Так не бывает ;-))
"Bool" - действительно не поймет, а вот "bool" - это зарегистрированное слово...
ну если все так серьезно конечно, и у тебя действительно какой то левый компилятор то вот :
C++:
#define Bool int;
enum Boolean {false,true};
 
B

BoSSea

Гость
#6
Да Большое спс ... чуть чуть по колдовал и работает ... Спс еще раз )