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

Динамический массив - C++

Восстановить пароль Регистрация
 
Vlad-letchik
0 / 0 / 0
Регистрация: 08.04.2012
Сообщений: 38
08.04.2012, 19:58     Динамический массив #1
Помогите пожалуйста написать программу!!! Нужно для будущих авиаторов, не дайте умереть авиации))))

Написать программу, вводя размер массива с клавиатуры
Дан одномерный массив, состоящий из N целочисленных элементов.
1.1. Заполнить массив случайными числами.
1.2. Найти минимальный элемент.
1.3. Вычислить сумму положительных нечетных элементов массива.
1.4. Вывести положительные элементы на экран. Использовать динамический массив.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.04.2012, 19:58     Динамический массив
Посмотрите здесь:

Массив: передать динамический массив в функцию и записать в каждый элемент строку из файла C++
динамический массив (Целое число разложить на массив простых множителей) C++
Создать динамический массив (Если чётных чисел больше, то массив должен быть укорочен на 2 элемента) C++
Написать функцию принимающую массив и возвращающую указатель на динамический массив C++
C++ Переделать динамический массив на статический массив
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
jambas92
 Аватар для jambas92
58 / 57 / 3
Регистрация: 18.11.2010
Сообщений: 315
08.04.2012, 20:16     Динамический массив #2
ну только ради авиации))
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
#include <iostream>
#include <time.h>
using namespace std;
int main()
{
    int *mas;
    int n, min, sum = 0;
    cin >> n;
 
    mas = new int[n];
 
    for (int i=0; i<n; i++)
    {
        mas[i] = rand() % 10000 - 1000;
    }
    min = mas[0];
    for (int i=0; i<n; i++)
    {
        if (min > mas[i])
        {
            min = mas[i];
        }
        if (mas[i] > 0 && mas[i] % 2 == 1)
        {
            sum = sum + mas[i];
        }
    }
 
    cout << "\nminimum is: " << min << "\n" << "the sum of non negative and add element is: " << sum << "\n";
 
    cout << "pozitive element are:\n";
    for (int i=0; i<n; i++)
    {
        if (mas[i] > 0)
        {
            cout << mas[i] << " ";
        }
    }
    return 0;
}
eji
116 / 116 / 6
Регистрация: 17.09.2010
Сообщений: 288
08.04.2012, 20:35     Динамический массив #3
Vlad-letchik, и от меня:
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
#include <stdio.h>
#include <time.h>
 
int main(int argc, char *argv[])
{
    printf("Demo\n");
    int sz = 1;
    int i = 0;
    int min = 101;
    int sum = 0;
    int *a;
    srand(time(NULL));
    printf("Input size: ");
    scanf("%d", &sz);
    a = (int*)malloc(sz * sizeof(int));
    if(a == NULL) exit(1);
    for(i = 0; i < sz; i++)
    {
        a[i] = rand() % 200 - 100;
        printf("%d\n", a[i]);
        if(min > a[i]) min = a[i];
        if(a[i] > 0 && a[i] % 2 != 0) sum += a[i];
    }
    printf("---------------------------------\n");
    for(i = 0; i < sz; i++)
    {
        if(a[i] >= 0)
        {
            printf("%d\n", a[i]);
        }
    }
    printf("min: %d\nsum: %d\n", min, sum);
    free(a);
    getch();
    return 0;
}
Vlad-letchik
0 / 0 / 0
Регистрация: 08.04.2012
Сообщений: 38
08.04.2012, 20:46  [ТС]     Динамический массив #4
Ребята,спасибо за помощь! Если не сложно и есть время напишите еще хоть одну, а то преподы валят всех...
Структуры: Описать структуру «дата» (год, месяц, день). Определить функцию «верна ли дата» проверяющую корректность введенной даты.

Работа со строками: Написать программу, которая считывает английский текст из файла и выводит его на экран, заменив каждую первую букву слов, начинающихся с гласной буквы на прописную.

_kod_
4 / 4 / 0
Регистрация: 24.10.2011
Сообщений: 84
08.04.2012, 20:50     Динамический массив #5
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
//---------------------------------------------------------------------------
#include <iostream>
#include <limits>
#include <vcl.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
 int n, sum = 0, max = DBL_MAX;
 cout<<"Vvedite razmernost' massiva(n): ";
 cin >> n;
 
 int *ps = new int[n];
 //Г‡Г*ïîëГ*èëè Г°Г*Г*äîìГ*Г®
 randomize();
 for(int i = 0;i<n;i++)
  {
   ps[i] = -5+rand()%10;
    if(ps[i] < max)
     {
      max = ps[i];
     }
  }
 //Âûâåëè, ГІГ® Г·ГІГ® Г§Г*ïîëГ*èëè âûøå Г*Г* ГЅГЄГ°Г*Г*
 cout<<"Ishodniy massiv: "<<endl;
 for(int i = 0;i<n;i++)
  {
   cout<<ps[i]<<" ";
  }
  cout<<endl;
 //Ïîñ÷èòГ*ëè ñóììó Г*ГҐГ·ГҐГІГ*ûõ ïîëîæèòåëüГ*ûõ ýëåìåГ*òîâ
 for(int i = 0;i<n;i++)
  {
 
   if ((ps[i]>0) && (ps[i]%2!=0))
    sum+=ps[i];
  }
 
 //Âûâåëè ïîëîæèòåëüГ*ûå ýëåìåГ*ГІГ»
 cout<<"Polozhit. elementy: "<<endl;
 for(int i = 0;i<n;i++)
  {
   if(ps[i] > 0)
    cout<<ps[i]<<" ";
  }
  cout<<endl;
 //Ïîäâåëè èòîã Г°Г*áîòû
 cout<<"min: "<<max<<endl;
 cout<<"Summa nechet. polozhit.: "<<sum<<endl;
  system("pause");
        return 0;
}
//---------------------------------------------------------------------------
Не дам погибнуть нашей авиации
jambas92
 Аватар для jambas92
58 / 57 / 3
Регистрация: 18.11.2010
Сообщений: 315
08.04.2012, 21:07     Динамический массив #6
структуры...

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
42
43
44
45
46
47
48
49
50
#include <iostream>
using namespace std;
 
struct Date{
    int day;
    int month;
    int year;
};
 
int main()
{
    Date d;
    char ch;
    cout << "Enter the date in format of day/month/year\n";
 
    cin >> d.day >> ch >> d.month >> ch >>d.year;
 
    if (d.year < 0 || d.month < 0 || d.day < 0)
    {
        cerr << "Incorrect date\n";
        return 0;
    }
    if (d.month == 1 || d.month == 3 || d.month == 5 || d.month == 7 || d.month == 8 || d.month == 10 || d.month == 12)
    {
        if (d.day > 31)
        {
            cerr << "Incorrect date\n";
            return 0;
        }
    }
    if (d.month == 2)
    {
        if (d.day > 28)
        {
            cerr << "Incorrect date\n";
            return 0;
        }
    }
    if (d.month == 4 || d.month == 6 || d.month == 9 || d.month == 11)
    {
        if (d.day > 30)
        {
            cerr << "Incorrect date\n";
            return 0;
        }
    }
 
    cout << "Date is correct!\n";
    return 0;
}
_kod_
4 / 4 / 0
Регистрация: 24.10.2011
Сообщений: 84
08.04.2012, 21:12     Динамический массив #7
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
42
//---------------------------------------------------------------------------
#include <iostream>
#include <string>
#include <cctype>
#include <fstream>
#include <stdlib>
#include <vcl.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
 ifstream inFile;
 inFile.open("char.txt");
 
  if(!inFile.good() )
   {
   cout<<"Can't open file"<<endl;
   exit(EXIT_FAILURE);
   }
 char ch[50];
 
 while(inFile.good() )
 inFile.getline(ch,50);
 
 
 cout<<ch<<endl;
 
/* for(int i = 0;i<strlen(ch)-1;i++)
  {
   if (ch == '')
  }*/
 
 
 
 
  system("pause");
        return 0;
}
//---------------------------------------------------------------------------
Че-то мне мозгов не хватает как оптимально распознать гласную букву... Специальных средств С++ для этого не дает...
Забыл еще... Когда будешь компилировать код, то создай заранее файлик char.txt в папке где будет сохранен exeшник этой проги
jambas92
 Аватар для jambas92
58 / 57 / 3
Регистрация: 18.11.2010
Сообщений: 315
08.04.2012, 21:43     Динамический массив #8
_kod_, просто простым перебором, в англ языке не так много гласных
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.04.2012, 22:36     Динамический массив
Еще ссылки по теме:

Двумерный массив (поменять статический массив на динамический) C++
Заполнить динамический массив из файла и записать массив обратно в файл C++
C++ Массив и память. Как создать динамический массив?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
_kod_
4 / 4 / 0
Регистрация: 24.10.2011
Сообщений: 84
08.04.2012, 22:36     Динамический массив #9
Пользуясь случаем хотел спросить, у меня че-то из хедера ctype.h ф-я toupper и tolower не пашет...

Добавлено через 32 минуты
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
42
43
44
45
//---------------------------------------------------------------------------
#include <iostream>
#include <string>
#include <cctype>
#include <fstream>
#include <stdlib>
#include <vcl.h>
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
 ifstream inFile;
 inFile.open("char.txt");
 int b = 'A'-'a';
  if(!inFile.good() )
   {
   cout<<"Can't open file"<<endl;
   exit(EXIT_FAILURE);
   }
 char ch[50];
 
 while(inFile.good() )
 inFile.getline(ch,50);
 
 
 cout<<ch<<endl;
 
 for(int i = 0;i<strlen(ch)-1;i++)
  {
   if (ch[i] == 'a' || ch[i] == 'e' || ch[i] == 'i' || ch[i] == 'o' || ch[i] == 'u' || ch[i] == 'y' )
     {
      ch[i] = char(ch[i]+b);
     }
  }
 
 
 
 cout<<ch<<endl;
  system("pause");
        return 0;
}
//---------------------------------------------------------------------------
Вот...
Yandex
Объявления
08.04.2012, 22:36     Динамический массив
Ответ Создать тему
Опции темы

Текущее время: 04:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru