Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> проверка на чётность/нечётность, цифр в введённом числе 
:(
    Опции темы
VolvSet
Дата 24.2.2008, 17:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 24.2.2008

Репутация: нет
Всего: нет



Помогите получить зачетку.
Надо написать токую програму на С :
User вводит цифру нп: 7965132 а на монитор выводитса : 6,2.
тоесть цифры которые делятса на 2. 

вот начало:
Код
#include <stdio.h>
#include <conio.h>  
  int main ()
  {
      int a,size ;
      printf("write number:"); 
      scanf("%d",&a);
      size=strlen(a);
     
     
      return a;        
}


как докончит? огромное спасибо.

Модератор: Название темы должно отражать ее суть!

Это сообщение отредактировал(а) JackYF - 25.2.2008, 14:19
PM MAIL   Вверх
Fazil6
Дата 24.2.2008, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 7
Всего: 60



Код

#include <stdio.h>
#include <conio.h>  
int main ()
{
    char str[10];
    char *a = str;
    printf("write number:"); 
    scanf("%s", a);

    printf("\n");
    while(*a)
    {
        if( ! ((*a - '0') % 2) )
        {
            printf(" %c", *a);
        }
        ++a;

    }

    return 0;        

}

PM MAIL   Вверх
I_Lammer
Дата 24.2.2008, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 22.2.2008

Репутация: нет
Всего: нет



Цитата

User вводит цифру нп: 7965132 а на монитор выводитса : 6,2.
тоесть цифры которые делятса на 2. 

В числе 7965132 - есть и другие цифры которые делятся на 2 кроме 6, 2. 

Наверно правельнее сказать что программа должна выводить все числа делящиеся на 2 из промежутка 0 - 7965132. Я правильно понял?  
PM MAIL   Вверх
xKOCMOCx
Дата 24.2.2008, 18:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 3.8.2007

Репутация: нет
Всего: нет



Цитата(I_Lammer @ 24.2.2008,  18:03)
Цитата

User вводит цифру нп: 7965132 а на монитор выводитса : 6,2.
тоесть цифры которые делятса на 2. 

В числе 7965132 - есть и другие цифры которые делятся на 2 кроме 6, 2. 

Наверно правельнее сказать что программа должна выводить все числа делящиеся на 2 из промежутка 0 - 7965132. Я правильно понял?

имеется ввиду нацело....
PM MAIL   Вверх
bsa
Дата 24.2.2008, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



I_Lammer, разницу между словами "цифра" и "число" знаешь?
PM   Вверх
VolvSet
Дата 24.2.2008, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 24.2.2008

Репутация: нет
Всего: нет



bsa
sorry , там надабыло написать мне не цифра а число.
Fazil6
после ввода числа програма выходит нечего ненаписав в ответе. :(
PM MAIL   Вверх
I_Lammer
Дата 24.2.2008, 19:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 22.2.2008

Репутация: нет
Всего: нет



Можно ещё так сделать:

Код

#include <stdio.h>
int main()
{
 long int a,n,i,ost,ost1;
 printf("write number: ");
 scanf("%ld",&a);
 m1:ost=a-(a/10)*10;
 ost1=ost-(ost/2)*2;
 if(ost1==0)printf("%ld ",ost);
 a=a/10;
 if(a>0)goto m1;
 return 0;
 }


Добавлено через 6 минут и 9 секунд
bsa, Знаю, число состоит из цифр)))

Это сообщение отредактировал(а) I_Lammer - 24.2.2008, 19:07
PM MAIL   Вверх
VolvSet
Дата 24.2.2008, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 24.2.2008

Репутация: нет
Всего: нет



всем огромное спасибо.Работает.
А то я начинающий в этом деле.
PM MAIL   Вверх
Dronchik
Дата 25.2.2008, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Звукач ёмаё
**


Профиль
Группа: Участник
Сообщений: 451
Регистрация: 1.5.2007

Репутация: 1
Всего: 37



VolvSet, запомни, заголовок темы должен отражать суть проблемы. Заголовки "Прошу помощи, ХЕЛП!!! Я ламер!!! и т.д." нарушают правила форума


--------------------
Вместо слов делай дело, от которого ты фанатеешь. (с)

PM MAIL WWW ICQ   Вверх
VolvSet
Дата 25.2.2008, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 24.2.2008

Репутация: нет
Всего: нет



Dronchik,
Ок, другой раз буду знать 
PM MAIL   Вверх
ddj
Дата 3.3.2008, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 106
Регистрация: 26.2.2008

Репутация: нет
Всего: 1



Цитата(Fazil6 @ 24.2.2008,  18:01)
Код

#include <stdio.h>
#include <conio.h>  
int main ()
{
    char str[10];
    char *a = str;
    printf("write number:"); 
    scanf("%s", a);
    printf("\n");
    while(*a)
    {
        if( ! ((*a - '0') % 2) )
        {
            printf(" %c", *a);
        }
        ++a;
    }
    return 0;        
}


Интересный способ, а как переделать его?
Исползуя динамическою память и указатели.
Основные переменные
создать в динамической памяти.Исползовать распредиление
динамической памяти функции.
--------------------
#iddj
PM MAIL   Вверх
bsa
Дата 3.3.2008, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



ddj, вместо char str[10]; пишешь char *str = (char*)malloc(10);
И перед return 0; вставляешь строку: free(str);

Добавлено через 36 секунд
Ах, да. Забыл. Еще нужно #include <stdlib.h> первой строчкой написать
PM   Вверх
ddj
Дата 3.3.2008, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 106
Регистрация: 26.2.2008

Репутация: нет
Всего: 1



bsa, только и всего?
--------------------
#iddj
PM MAIL   Вверх
bsa
Дата 4.3.2008, 00:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



ddj, а ты думал?
PM   Вверх
ddj
Дата 6.3.2008, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 106
Регистрация: 26.2.2008

Репутация: нет
Всего: 1



bsa
Код

#include <stdlib.h>
#include <stdio.h>

int main ()
{
    char *str = (char*)malloc(10);
    char *a = str;
    printf("write number:"); 
    scanf("%s", a);

    printf("\n");
    while(a)
    {
        if( ! ((*a - '0') % 2) )
        {
            printf(" %c", a);
        }
        ++a;

    }
   
  free(str);
    
    return 0; 
 
неработает..

--------------------
#iddj
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0816 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.