Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2016, 14:28   #1
enochka
Новичок
Джуниор
 
Регистрация: 14.03.2016
Сообщений: 4
По умолчанию Задача на С++

Создать меню и выполнение всех его пунктов.
1.Ввод массива целых чисел.
2.Вывод массива в строку.
3.Вычисление среднего арифметического значения элементов массива и замена положительных элементов массива целой частью от среднего арифметического значения.
4.Конец работы.
Прошу помощи , т.к не силён в с++ учусь на заочке...
enochka вне форума Ответить с цитированием
Старый 14.03.2016, 15:09   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Так проблема в чем? Задание то элементарное...
p51x вне форума Ответить с цитированием
Старый 14.03.2016, 16:37   #3
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,603
По умолчанию

Код:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

// массив
struct buf 
{ 
	int* buf1; 
	int n; 

	buf() { n = 0; buf1 = NULL; } 
	~buf() { if (buf1) delete buf1;}
	buf(int i) { buf1 = new int[i]; n = i; }
	void add0(int a) { buf1 = new int[1]; buf1[0] = a;  n = 1; }
	void add(int a) {  if (n == 0) { add0(a); /*print();*/ return; } int i; int* buf2 = new int[n+1]; for(i=0;i<n;i++) buf2[i] = buf1[i]; buf2[n] = a; n = n+1; delete [] buf1; buf1 = buf2; /*print();*/ }
	void add10(int* a, int n1) {   int i; buf1 = new int[n1+1]; for(i=0;i<n1;i++) buf1[i] = a[i];  n = n1; }
	void add1(int* a, int n1) { if (n == 0) { add10(a, n1); print(); return; } int i, j; int* buf2 = new int[n + n1+2]; for(i=0;i<n;i++) buf2[i] = buf1[i]; for(i=n,j=0;j<n1;j++, i++) buf2[i] = a[j]; n = n + n1; printf("%d\n", n);delete [] buf1; buf1 = buf2; print(); }
	void add1(int* a) { int n1 = len(); if (n == 0) { add10(a, n1); print(); return; } int i, j; int* buf2 = new int[n + n1+2]; for(i=0;i<n;i++) buf2[i] = buf1[i]; for(i=n,j=0;j<n1;j++, i++) buf2[i] = a[j]; n = n + n1; printf("%d\n", n);delete [] buf1; buf1 = buf2; print(); }
	void print() { if (buf1) { int i; for(i=0;i<n;i++) printf("%d ", buf1[i]); printf("\n"); } }
	int len() { return n; }
	int arith() { if (buf1) { int sum, i; for(sum=0,i=0;i<n;i++) sum+=buf1[i]; sum /= n; printf("arith:%d\n", sum); return sum;} return 0;}
	void replace() {if (buf1) { int sum, i; sum=arith(); for(i=0;i<n;i++) if(buf1[i]>0) buf1[i]=sum; }}
};



void main()
{
int mn;
int rn;
buf* m=new buf();

do
{
scanf("%d", &mn);

switch (mn)
{
case 1: { do { scanf("%d\n", &rn);m->add(rn);} while(rn!=0); } break;
case 2: m->print(); break;
case 3: m->replace(); m->print(); break;
case 4: exit(0); break;
default: break;
};

} while(1);

delete m;
}
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 14.03.2016, 16:54   #4
enochka
Новичок
Джуниор
 
Регистрация: 14.03.2016
Сообщений: 4
По умолчанию

Благодарю добрый человек , мой поклон вам !
enochka вне форума Ответить с цитированием
Старый 14.03.2016, 19:39   #5
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,568
По умолчанию

Код прошел обфускацию?
Arigato вне форума Ответить с цитированием
Старый 14.03.2016, 19:48   #6
enochka
Новичок
Джуниор
 
Регистрация: 14.03.2016
Сообщений: 4
По умолчанию

Что-то не работает ! Кто может объясните))
scanf_s заменил , точнее не вылетает ошибку 0x0 пишет, так вроде бы все правильно ага?

Последний раз редактировалось enochka; 14.03.2016 в 19:58.
enochka вне форума Ответить с цитированием
Старый 14.03.2016, 23:28   #7
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,603
По умолчанию

enochka
Не работает? Ввод чисел производится?

Скомпилированный файл: http://rusfolder.com/44842460


Arigato
причем тут обфускация?
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 14.03.2016, 23:46   #8
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,568
По умолчанию

Цитата:
Сообщение от challengerr Посмотреть сообщение
причем тут обфускация?
Ну а вы на свой код гляньте.
Arigato вне форума Ответить с цитированием
Старый 14.03.2016, 23:48   #9
Croessmah
Вредный кошак
Участник клуба
 
Аватар для Croessmah
 
Регистрация: 14.10.2012
Сообщений: 1,159
По умолчанию

Код:
~buf() { if (buf1) delete buf1;}
buf(int i) { buf1 = new int[i]; n = i; }
UB detected.
delete не тот.

Код:
~buf() { delete[] buf1;}
Ащпе страшная смесь сишни и плюсов...

Последний раз редактировалось Croessmah; 14.03.2016 в 23:53.
Croessmah вне форума Ответить с цитированием
Старый 15.03.2016, 14:24   #10
enochka
Новичок
Джуниор
 
Регистрация: 14.03.2016
Сообщений: 4
По умолчанию

Цитата:
Сообщение от challengerr Посмотреть сообщение
enochka
Не работает? Ввод чисел производится?

Скомпилированный файл: http://rusfolder.com/44842460


Arigato
причем тут обфускация?
Ввод чисел не происходит , домой приду , твой ехе файл запущу, все равно большое спасибо! не много разбирался вчера сидел
enochka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
задача на зачёт. проблема Задача на нобелевскую премию! Sabotage5 Паскаль, Turbo Pascal, PascalABC.NET 2 18.03.2013 15:18
Задача по подсчёту статистики использования букв. Другая задача - по длинной арифметике Pascal ABC kimberly Паскаль, Turbo Pascal, PascalABC.NET 3 24.12.2012 17:03
Задача на оптимальный расчет маршрута (задача в презентации) в табличном процессоре Excel Toofed Помощь студентам 0 30.11.2011 01:12
Задача минимизации дисбаланса на линии сборки (задача минимакса) LenZab Microsoft Office Excel 13 13.03.2011 22:51