Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 02.03.2010
Сообщений: 21
1

Одномерный массив и нахождение целых чисел.

27.03.2010, 14:07. Показов 1746. Ответов 11
Метки нет (Все метки)

Добрый день. Требуется написать программу на С, которая подсчитывает количество целых чисел в последовательности аааа и попутно присваивает их(целые числа) последовательности bbbb. Размер последовательности и сама последовательность задаётся пользователем с клавиатуры. Зараннее спасибо.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.03.2010, 14:07
Ответы с готовыми решениями:

Преобразовать одномерный массив вещественных случайных чисел в массив целых чисел
Преобразовать одномерный массив вещественных случайных чисел в массив целых чисел больших исходных...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел
1) Сформировать одномерный массив целых чисел, используя датчик случайных чи-сел. 2) Распечатать...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел
Условие такое 1.Сформировать одномерный массив целых чисел, используя датчик случайных чисел....

Сформировать одномерный массив целых чисел, используя датчик случайных чисел
1)Сформировать одномерный массив целых чисел, используя датчик случайных чисел. 2)Распечатать...

11
13 / 13 / 3
Регистрация: 28.04.2009
Сообщений: 62
27.03.2010, 20:23 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <math.h>
#include <iostream>
using namespace std ;
 
int main ()
{
    int razmer;    
    cout<<"Razmer= ";cin>>razmer;   //запрашиваем размерность массива.
    double mas1[razmer];            //создаем массивы последовательности 
    int mas2[razmer];               //и массив для целых чисел
    int b=0;                        //счетчик целых элементов
    
    for(int i=0;i<razmer;i++){
        cout<<"chislo #"<<i<<": ";cin>>mas1[i];  //запрашиваем значение очередного элемента
        double c;               //сюда сохранится целая часть числа
        if (!modf(mas1[i],&c)){ //если фунция вернет 0 (как дробную часть числа mas1[i])
            mas2[b]=c;    //сохраняем ее
            b++;        //увеличиваем счетчик
        }
    }
return 0;}
0
5 / 20 / 3
Регистрация: 22.03.2010
Сообщений: 131
27.03.2010, 21:55 3
Цитата Сообщение от Katish Посмотреть сообщение
Добрый день. Требуется написать программу на С, которая подсчитывает количество целых чисел в последовательности аааа и попутно присваивает их(целые числа) последовательности bbbb. Размер последовательности и сама последовательность задаётся пользователем с клавиатуры. Зараннее спасибо.
Попробуй вот это! реализовано на Borland Turbo C++ 3. Если есть неточности или ошибки прошу указать!

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
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define N 30 //max razmer masiva
#define M 10
int has_point (char *c);
main()
{
    static char aaaa[N][M];
    static int bbbb[N];
    int i=0,j=0,n,count;
 
    clrscr();
    printf("Vvedite kolichestvo chisel: ");
    scanf("%u",&n);
    printf("Vvedite chisla: \n");
    while ( i < n )
       scanf("%s",aaaa[i++]);
 
    i=0;
    while ( i < n ){
       if ( !has_point(aaaa[i]) )
            bbbb[j++] = atoi(aaaa[i]);
       i++;
       }
 
    i=0;count=0;
    while ( i < n ){
       if (bbbb[i] != 0)
           count++;
       i++;
       }
    printf("Celyh chisel: %d\n",count);
    return 0;
}
 
int has_point (char *c)
{
     for (int i = 0; i<strlen(c);i++)
         if (c[i] == '.')
            return(1);
     return 0;
}
1
0 / 0 / 0
Регистрация: 02.03.2010
Сообщений: 21
27.03.2010, 23:56  [ТС] 4
Оба варианта не подошли. Возможно из-за того что реализовать нужно не на С++ а нa чистом С. Или у меня с мозгами что-то не так. На всякий случай укажу ошибки выданые компилятором:
Voron8:
Line 2: Unable to open include file 'IOSTREAM'
Line 4: Declaration syntax error
Line 7: Undefined symbol 'cout' in function main
Illegal use of pointer in function main
Undefined symbol 'cin' in function main
Warnings: Code has no effect in function main
Possible use of 'razmer' before definition in function main
Line 8: Expression syntax in function main
Line 9: Expression syntax in function main
Line 10: Expression syntax in function main
Line 11: Expression syntax in function main
Undefined symbol 'i' in function main
Statement missing ; in function main
Possible use of 'razmer' before definition in function main
Warnings: Code has no effect in function main
Possible use of 'razmer' before definition in function main


maxik42:
Line 10: Expression syntax in function main
Array bounds missing ] in function main
Line 11: Expression syntax in function main
Array bounds missing ] in function main
Line 19: Undefined symbol 'aaaa' in function main
Invalid indirection in function main
Line 23: Invalid indirection in function main
Line 24: Undefined symbol 'bbbb' in function main
Invalid indirection in function main
Invalid indirection in function main
Line 30: Invalid indirection in function main
Line 36: 'j' is assigned a value which is never used in function main
Line 40: Expression syntax in function has_point
Undefined symbol 'i' in function has_point
Code has no effect in function has_point
Statement missing ; in function has_point
0
5 / 20 / 3
Регистрация: 22.03.2010
Сообщений: 131
28.03.2010, 00:10 5
Цитата Сообщение от Katish Посмотреть сообщение
Оба варианта не подошли. Возможно из-за того что реализовать нужно не на С++ а нa чистом С. Или у меня с мозгами что-то не так. На всякий случай укажу ошибки выданые компилятором:
Voron8:
Line 2: Unable to open include file 'IOSTREAM'
Line 4: Declaration syntax error
Line 7: Undefined symbol 'cout' in function main
Illegal use of pointer in function main
Undefined symbol 'cin' in function main
Warnings: Code has no effect in function main
Possible use of 'razmer' before definition in function main
Line 8: Expression syntax in function main
Line 9: Expression syntax in function main
Line 10: Expression syntax in function main
Line 11: Expression syntax in function main
Undefined symbol 'i' in function main
Statement missing ; in function main
Possible use of 'razmer' before definition in function main
Warnings: Code has no effect in function main
Possible use of 'razmer' before definition in function main


maxik42:
Line 10: Expression syntax in function main
Array bounds missing ] in function main
Line 11: Expression syntax in function main
Array bounds missing ] in function main
Line 19: Undefined symbol 'aaaa' in function main
Invalid indirection in function main
Line 23: Invalid indirection in function main
Line 24: Undefined symbol 'bbbb' in function main
Invalid indirection in function main
Invalid indirection in function main
Line 30: Invalid indirection in function main
Line 36: 'j' is assigned a value which is never used in function main
Line 40: Expression syntax in function has_point
Undefined symbol 'i' in function has_point
Code has no effect in function has_point
Statement missing ; in function has_point
Уважаемая а у вас какой вообще компилятор? весь ли вы код скопировали? потому что эту прогу я лично отлаживал в Borland Turbo C++ version 3. Ошибок просто не может быть! Я ее писал на чистом си!
0
0 / 0 / 0
Регистрация: 02.03.2010
Сообщений: 21
28.03.2010, 00:12  [ТС] 6
Цитата Сообщение от maxik42 Посмотреть сообщение
Уважаемая а у вас какой вообще компилятор? весь ли вы код скопировали? потому что эту прогу я лично отлаживал в Borland Turbo C++ version 3. Ошибок просто не может быть! Я ее писал на чистом си!
Компилятор TurboC забытой версии - раритет конечно ещё тот. Код скопировала весь, сейчас даже не поленюсь и вручную введу.
0
5 / 20 / 3
Регистрация: 22.03.2010
Сообщений: 131
28.03.2010, 00:17 7
Цитата Сообщение от Katish Посмотреть сообщение
Компилятор TurboC забытой версии - раритет конечно ещё тот. Код скопировала весь, сейчас даже не поленюсь и вручную введу.
А так теперь понятно че так много ошибок! там же синтаксис допотопный он уже не поддерживается! я даже ним не пользуюсь! и вам настоятельно рекомендую пользоваться только Borland Turbo C++ 3 потому что там синтаксис приемлимый и всегда все работает! мы на нем в универе лабораторки делали!
0
0 / 0 / 0
Регистрация: 02.03.2010
Сообщений: 21
28.03.2010, 00:22  [ТС] 8
Ну а мы на ТurboC, синтаксис разбираем соответственно тот допотопный, соответственно писать нужно под него. Если бы от меня что-то зависило, с удовольствием пользовалась бы Borland Turbo C++, но увы
0
5 / 20 / 3
Регистрация: 22.03.2010
Сообщений: 131
28.03.2010, 00:39 9
Цитата Сообщение от Katish Посмотреть сообщение
Ну а мы на ТurboC, синтаксис разбираем соответственно тот допотопный, соответственно писать нужно под него. Если бы от меня что-то зависило, с удовольствием пользовалась бы Borland Turbo C++, но увы
Кошмар!
0
0 / 0 / 0
Регистрация: 02.03.2010
Сообщений: 21
28.03.2010, 00:55  [ТС] 10
А знаете, в принципе после ручного ввода целые числа считает корректно, только пришлось немножко изменить функцию has_pointer:
C
1
2
3
4
5
6
7
8
{
   int i;
   for (i=0;i<strlen(c);i++)
    if(c[i] == '.')
    return(1);
    return 0;
 
}
Спасибо огромное.
И ещё один глупый вопрос: как проверить, записываются ли целые числа в bbbb?
0
5 / 20 / 3
Регистрация: 22.03.2010
Сообщений: 131
28.03.2010, 01:59 11
Цитата Сообщение от Katish Посмотреть сообщение
А знаете, в принципе после ручного ввода целые числа считает корректно, только пришлось немножко изменить функцию has_pointer:
C
1
2
3
4
5
6
7
8
{
   int i;
   for (i=0;i<strlen(c);i++)
    if(c[i] == '.')
    return(1);
    return 0;
 
}
Спасибо огромное.
И ещё один глупый вопрос: как проверить, записываются ли целые числа в bbbb?
Можно их вывести!
C
1
2
3
4
5
6
    i=0;
    while ( (i < n) && (bbbb[i] != 0) )
        {
        printf("%d ",bbbb[i]);
        i++;
        }
1
5 / 20 / 3
Регистрация: 22.03.2010
Сообщений: 131
29.03.2010, 09:57 12
Цитата Сообщение от Katish Посмотреть сообщение
А знаете, в принципе после ручного ввода целые числа считает корректно, только пришлось немножко изменить функцию has_pointer:
C
1
2
3
4
5
6
7
8
{
   int i;
   for (i=0;i<strlen(c);i++)
    if(c[i] == '.')
    return(1);
    return 0;
 
}
Спасибо огромное.
И ещё один глупый вопрос: как проверить, записываются ли целые числа в bbbb?
Можем вывести этот масив!
C
1
2
3
4
5
6
    i=0;
    while ( (i < n) && (bbbb[i] != 0) )
        {
        printf("%d ",bbbb[i]);
        i++;
        }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.03.2010, 09:57

Сформировать одномерный массив целых чисел, используя датчик случайных чисел
Сформировать одномерный массив целых чисел, используя датчик случайных чисел.Распечатать полученный...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел
Удалить элементы кратные 7. Добавить после каждого нечетного элемента массива элемент со значением...

Сформировать одномерный массив целых чисел, используя датчик случайных чисел.
Сформировать одномерный массив целых чисел, используя датчик случайных чисел. Удалить 5...

Дано одномерный массив целых чисел
Помогите пожалуйста, выдает ошибку в строке arr = rand() % 100, что делать? Вот весь код #include...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.