powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Массив! маленькая, интересная задачка..
6 сообщений из 6, страница 1 из 1
Массив! маленькая, интересная задачка..
    #33203719
Andrey_Ohotin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть программа... но она выдает аварийную ошибку, если в массиве нет отрицательных элементов... что делать? )))
Она отлично кмпилируется.. запустите и проверьте.. плиз.. ))
#include "stdafx.h"
#include <exception>
#include <iostream>
#include "iostream.h"
#include "stdio.h"
#include "conio.h"
#include "string.h"
#include "ctype.h"
#include "new.h"
#include "windows.h"
#include "math.h"

/*------------------------------------------*/
char bufRus[256];
char* Rus(const char *text)
{
CharToOem(text,bufRus);
return bufRus;
}
/*------------------------------------------*/

int main()
{
int n = 0;
int imax, imin, j, kol;
int* ptr = new int[n];

printf("%s\n",Rus("Введите размерность массива:"));
scanf("%d",&n);
printf("%s %d",Rus("Введите число элементов в количестве равном:"),n);

for(int i=0;i<n;i++)
scanf("%d",&ptr );
printf("%s\n",Rus("Наши элементы:"));
for(int i=0;i<n;i++)
printf("%d ",ptr);

for(j=imax=imin=0;j<n;j++)
{
if (ptr[j]>ptr[imax]) imax = j;
if (ptr[j]<ptr[imin]) imin = j;
}

int d = 0; //здесь проверям, что находится левей.
if (imax<imin) d = 1; //если imax левей, то в цикле будем двигаться в правую сторону.
else if (imax>imin) d = -1; //иначе - в левую
for(kol=0, i=imax+d;i!=imin;i+=d)
if(ptr>0)
kol++;
printf("\n%s %d",Rus("Количество положительных элементов:"),kol);

delete[] ptr;

getch();
return 0;

}
...
Рейтинг: 0 / 0
Массив! маленькая, интересная задачка..
    #33203869
SeraTJ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По крайней мере в глаза бросается эта туфта:
Код: plaintext
if(ptr> 0 )
,
где ptr определен так:
Код: plaintext
int* ptr = new int[n];

а дальше логика. Да и вообще, пройди трассировщиком 1 раз, сам все поймешь
...
Рейтинг: 0 / 0
Массив! маленькая, интересная задачка..
    #33204866
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А чего это вообще делать то должно?
И вообще, если пишешь на С, не используй new/delete.
...
Рейтинг: 0 / 0
Массив! маленькая, интересная задачка..
    #33204929
SeraTJ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Andrey_Ohotin
#include <iostream>
#include "iostream.h"
#include "stdio.h"


это, конечно, просто крик.
Народ иногда такое выдает, что хоть стой, хоть падай... грустно.
...
Рейтинг: 0 / 0
Массив! маленькая, интересная задачка..
    #33204984
stm_2005
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
int n = 0 ;
int imax, imin, j, kol;
int* ptr = new int[n];
...
Рейтинг: 0 / 0
Массив! маленькая, интересная задачка..
    #33205653
SeraTJ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
int n =  0 ;
//
int* ptr = new int[n];

//
scanf("%d",&n);
//

for(int i= 0 ;i<n;i++)
scanf("%d",&ptr);
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Массив! маленькая, интересная задачка..
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]