Даны целые числа А1, А2, А3, ., Ап. Все члены последовательности заменить целой частью среднего арифметического всех членов последовательности, остальные члены оставить без изменения. Если в последовательности несколько членов со значением Min (А1, А2, А3, ... Ап),то заменить последний по порядку.
Не могу понять почему у меня при запуске пишет,что минимальный элемент = 0.
я еще начинающая, и надеюсь помощи от вас...
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
int i, min, sum, m , A, S, N, sr;
int *a;
void main()
{
cout << "\n vvedite koli4estvo 4isel N v posledovatel'nosti An: " << "\n N = ";
cin >> N;
a = (int*)calloc(N, sizeof(int));
cout << "\n vvedite 4isla posledovatel'nosti An: \n";
min = a[0];
for( i = 0; i < N; i++)
{
cout << "A" << i + 1 << " ";
cin >> A;
a[i] = A;
if (min > a[i])
{
min = a[i];
m = i;
}
}
cout << "\n minimal'noe 4islo = " << min;
cout << "\n resul'tat: \n";
for (i = 1; i < m; i++)
{
sr = sr / N;
a[i] = sr;
}
for( i = 0; i < N; i++)
{
cout << "A" << i + 1 << " " << a[i] << endl;
}
getch();
free(a);
}
найдите ошибку plz..
Started By desert_rose, дек 09 2006 21:25
7 ответов в этой теме
#2
Отправлено 09 декабря 2006 - 23:54
Потому что эта строчка
a = (int*)calloc(N, sizeof(int));
создает массив из н элементов и заполняет его нулями..
поэтому когда ты пишешь
min = a[0];
min равен нулю, (потому что a[0] = 0)
потом ты наверное вводишь все положительные числа и вот и получается , что min остается равным 0 после конца цикла.
a = (int*)calloc(N, sizeof(int));
создает массив из н элементов и заполняет его нулями..
поэтому когда ты пишешь
min = a[0];
min равен нулю, (потому что a[0] = 0)
потом ты наверное вводишь все положительные числа и вот и получается , что min остается равным 0 после конца цикла.
#4
Отправлено 11 декабря 2006 - 15:08
вот переделанная версия, но у меня почему-то тоже не срабатывает.
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
int i, min, sum, m , A, S, N, sr;
int *a;
void main()
{
cout << "\n vvedite koli4estvo 4isel N v posledovatel'nosti An: " << "\n N = ";
cin >> N;
cout << "\n vvedite 4isla posledovatel'nosti An: \n";
min = a[o];
for( i = 0; i < N; i++)
{
cout << "A" << i + 1 << " ";
cin >> A;
a[i] = A;
if (min < a[i])
{
min = a[i];
m = i;
}
}
cout << "\n minimal'noe 4islo = " << min;
cout << "\n resul'tat: \n";
for (i = 0; i < m; i++)
sum += a[i];
for (i = 1; i < m; i++)
sr = sum / N;
a[m] = sr;
for( i = 0; i < N; i++)
cout << "A" << i + 1 << " " << a[i] << endl;
getch();
free(a) ;
}
вот переделанная версия, но у меня почему-то тоже не срабатывает.
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
int i, min, sum, m , A, S, N, sr;
int *a;
void main()
{
cout << "\n vvedite koli4estvo 4isel N v posledovatel'nosti An: " << "\n N = ";
cin >> N;
cout << "\n vvedite 4isla posledovatel'nosti An: \n";
min = a[o];
for( i = 0; i < N; i++)
{
cout << "A" << i + 1 << " ";
cin >> A;
a[i] = A;
if (min < a[i])
{
min = a[i];
m = i;
}
}
cout << "\n minimal'noe 4islo = " << min;
cout << "\n resul'tat: \n";
for (i = 0; i < m; i++)
sum += a[i];
for (i = 1; i < m; i++)
sr = sum / N;
a[m] = sr;
for( i = 0; i < N; i++)
cout << "A" << i + 1 << " " << a[i] << endl;
getch();
free(a) ;
}
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
int i, min, sum, m , A, S, N, sr;
int *a;
void main()
{
cout << "\n vvedite koli4estvo 4isel N v posledovatel'nosti An: " << "\n N = ";
cin >> N;
cout << "\n vvedite 4isla posledovatel'nosti An: \n";
min = a[o];
for( i = 0; i < N; i++)
{
cout << "A" << i + 1 << " ";
cin >> A;
a[i] = A;
if (min < a[i])
{
min = a[i];
m = i;
}
}
cout << "\n minimal'noe 4islo = " << min;
cout << "\n resul'tat: \n";
for (i = 0; i < m; i++)
sum += a[i];
for (i = 1; i < m; i++)
sr = sum / N;
a[m] = sr;
for( i = 0; i < N; i++)
cout << "A" << i + 1 << " " << a[i] << endl;
getch();
free(a) ;
}
вот переделанная версия, но у меня почему-то тоже не срабатывает.
#include <conio.h>
#include <stdlib.h>
#include <iostream.h>
int i, min, sum, m , A, S, N, sr;
int *a;
void main()
{
cout << "\n vvedite koli4estvo 4isel N v posledovatel'nosti An: " << "\n N = ";
cin >> N;
cout << "\n vvedite 4isla posledovatel'nosti An: \n";
min = a[o];
for( i = 0; i < N; i++)
{
cout << "A" << i + 1 << " ";
cin >> A;
a[i] = A;
if (min < a[i])
{
min = a[i];
m = i;
}
}
cout << "\n minimal'noe 4islo = " << min;
cout << "\n resul'tat: \n";
for (i = 0; i < m; i++)
sum += a[i];
for (i = 1; i < m; i++)
sr = sum / N;
a[m] = sr;
for( i = 0; i < N; i++)
cout << "A" << i + 1 << " " << a[i] << endl;
getch();
free(a) ;
}
Why to walk when you can run? // Iacoca Lee