21.01.2017, 11:28 [+3 UTC]
в нашей команде: 1 762 чел. | участники онлайн: 6 (рекорд: 21)

:: РЕГИСТРАЦИЯ

:: консультации

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.40 (02.09.2016)

Общие новости:
31.12.2016, 18:43

Форум:
18.01.2017, 11:36

Последний вопрос:
20.01.2017, 14:11

Последний ответ:
21.01.2017, 10:57

Последняя рассылка:
21.01.2017, 10:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
11.10.2010, 12:27 »
Васuльев Дмuтрuй
Благодарю за исчерпывающий ответ! [вопрос № 180241, ответ № 263441]
14.12.2009, 22:07 »
Anjali
Спасибо за подробное доказательство! [вопрос № 175111, ответ № 257727]

РАЗДЕЛ • С / С++

Создание программ на языках C и C++.

[администратор рассылки: Андрей Кузнецов aka Dr_Andrew (Старший модератор)]

Лучшие эксперты в этом разделе

Лысков Игорь Витальевич
Статус: Старший модератор
Рейтинг: 752
solowey
Статус: 5-й класс
Рейтинг: 221
Асмик Гаряка
Статус: Советник
Рейтинг: 183

Перейти к консультации №:
 

Консультация онлайн # 190271
Раздел: • С / С++
Автор вопроса: maxim387 (Посетитель)
Отправлена: 11.12.2016, 15:48
Поступило ответов: 1

Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос:

В числовую переменную последовательно вводятся отличные от нуля целые числа (0 –
конец последовательности). Определить и вывести на экран, какие два числа (чётные или
нечётные) были введены последними и какова их сумма. Язык программирования Си. Помогите пожалуйста.

Состояние: Консультация закрыта

Ответ # 274428 от Лысков Игорь Витальевич (Старший модератор)

Здравствуйте, maxim387!
Например, так

#include <stdio.h>	//printf, scanf
#include <conio.h>	//_getch

int main()
{
	int		last = 0;			//последнее введенное число
	int		previous = 0;		//предпоследнее введенное число
	int		num;				//сюда будем вводить число
	
	while(1)					//бесконечный цикл, выход после ввода 0
	{
		printf("Enter number (0 - exit): ");	//приглашаем ввести число
		scanf("%d", &num);						//вводим
		if (num == 0)							//= 0 ?
			break;								//выходим из бесконечного цикла
		previous = last;						//бывшее последнее становится предпоследним
		last = num;								//введенное - последним
	}
											//считаем и выводим
												//чет/нечет определяем по младшему биту
	printf("Previous number %d is %s\nLast number %d is %s\n%d + %d = %d\n",
		previous, (previous&1)?"odd":"even",	//значение предыдущего числа и слово нечетное(odd)/четное(even)
												//в зависимости от младшего бита (1 - нечетное)
		last, (last&1)?"odd":"even",			//аналогично для последнего
		previous, last, previous+last);			//значения последних чисел и их сумма

	_getch();					//ждем нажатие на клавишу
	return 0;
}


Консультировал: Лысков Игорь Витальевич (Старший модератор)
Дата отправки: 12.12.2016, 18:46

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

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

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос | интересные статьи

Время генерирования страницы: 0.13302 сек.

© 2001-2017, Портал RFPRO.RU, Россия
Авторское право: ООО "Мастер-Эксперт Про"
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.40 от 02.09.2016
Бесплатные консультации онлайн