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

Сжатие массива путем поиска элементов меньше заданного значения - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Решение уравнения - проверить код на корректность http://www.cyberforum.ru/cpp-beginners/thread1216272.html
Написал рещение небольшого уровнения а=корень из (2а+sin|2a|)/3,56 #include <iostream> #include <conio.h> #include <climits> #include <math.h> #include <climits> using namespace std; int main()
C++ Виртуальная функция Ругается на метод virtual bool isOveersize() из класса publication. Что не так ? #include "stdafx.h" #include <string> #include <iostream> using namespace std; class publication { http://www.cyberforum.ru/cpp-beginners/thread1216254.html
Составить все возможные меню, суммарная калорийность каждого из которых будет не меньше введенных величин C++
Справочник продуктов содержит название, калорийность и цену одного килограмма каждого продукта. Составить все возможные меню, суммарная калорийность каждого из которых будет не меньше, а общая стоимость не больше введенных пользователем величин. Меню - перечень продуктов со значением их количества и калорийности.
Найти наибольшее значение отношения трехзначного числа к сумме его цифр C++
Задача: Составить программу, которая находит наибольшее значение отношения трехзначного числа к сумме его цифр. Массивы и строки не использовать А текст программы написан правильно? //--------------------------------------------------------------------------- #include <stdio.h> #include <conio.h> #include <vcl.h> #pragma hdrstop ...
C++ Игра "Угадай число" http://www.cyberforum.ru/cpp-beginners/thread1216227.html
Здравствуйте,помогите у кого есть время и возможность вообщем задание такое: нужно написать прогу,где юзер вводит любое число машина рандомит число в диапазоне от 1 до 1000 и при сравнении должно выдать на экран , превышает ли загаданное пользователем число число компа,меньше данного ,или это они равны должен быть использован цикл конструкция свитч кейс и функции srand(time(NULL)); +...
C++ Исправление кода игры "Змейка" Добрый вечер, помогите исправить код(игра змейка), на данный момент когда запускаю игру, появляется 5 яблок, после того как змейка ест одно появляется либо еще 5 яблок, либо она ест 2 - 3 яблока (и они не появляются), но потом опять же 5 шт появляется. Мне нужно сделать так, чтобы на поле было постоянно 5 яблок, когда змейка ест одно, одно должно появляться. Помогите кто знает. Вот код:#include... подробнее

Показать сообщение отдельно
OverDozero
 Аватар для OverDozero
98 / 98 / 6
Регистрация: 07.04.2011
Сообщений: 517
24.06.2014, 22:11     Сжатие массива путем поиска элементов меньше заданного значения
Доброго времени суток всем.
Задача:
Задан одномерный целочисленный массив. Исключить из него все элементы, значения которых меньше заданного А
Проблема с сжатием массива
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <stdio.h>
#include <conio.h>
#include <time.h>
#include <stdlib.h>
 int a=0,n=0,V=0;//размерность n число a
 int mas=0; 
 int i,j;
 int newraz=0;
 int main ()
  {
    printf("Vvedite razmernost massiva:");
     scanf("%d",&n);
    printf("Vvedite 4islo 'A':");
     scanf("%d",&a);
    printf("Vyberete tip zapolneniya massiva\n");
    printf("'1'-avtomati4esloe zapolnenie massiva\n");
    printf("'2'-ru4noe zapolnenie massiva\n");
    printf("Tip:");
    scanf("%d",&V);//тип заполнения массива
    int *arr=new int[V];
    srand(time(NULL));
    if (V==1) {for (i=0;i<n;i++){
      arr[i]=rand()%99-25;
      printf("%d\n",arr[i]);
      }
    }
    if (V>=2){for (i=0;i<n;i++){
  printf("Vvedite '%d' 3lement massiva:",i+1);
  scanf("%d",&mas);
  arr[i]=mas;}}
      //поиск нужного значения а
    for (i=0;i<n;i++)
    {if (arr[i]<a){
       arr[i]=arr[i++];
       newraz++;}}//новый размер массива
    for (i=0;i<newraz;i++)
       printf("%d",arr[i]);
 getch();
// delete []arr;//освобождаем память
  return 0;
 }
Не могу реализовать именно часть сжатия.В чем ошибка?
И вывод сжатого массива не выходит.Выводит только 1 значение.Видимо ошибка в самом сжатии
delete []arr;-правильно освобождаю память динамического массива?
Спасибо за ответ!
P.S.В гугле искал сжатие массивов.Все не то.Мне не надо заменить элементы на другие,их просто надо сдвинуть

Добавлено через 9 минут
Ошибка в коде
C++
1
int *arr=new int[V]
должно быть
C++
1
int *arr=new int[n]
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru