27.06.2017, 23:58 [+3 UTC]
в нашей команде: 2 048 чел. | участники онлайн: 3 (рекорд: 21)

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

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

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

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

:: правила

:: новости

:: участники

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

:: форум

:: блоги

:: поиск

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

:: наш журнал

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

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

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

:: поддержка

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

Версия системы:
7.41 (25.02.2017)

Общие новости:
23.02.2017, 09:51

Форум:
27.06.2017, 19:24

Последний вопрос:
27.06.2017, 23:46

Последний ответ:
27.06.2017, 19:14

Последняя рассылка:
27.06.2017, 14:15

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

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

Наша кнопка:

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

Отзывы о нас:
03.04.2010, 14:14 »
Xrom1989
Ставлю 5 баллов. Все понятно и развернуто=) [вопрос № 177619, ответ № 260542]
05.02.2010, 10:07 »
Сурыев Назар
Большое спасибо Вам. этот тот результат который мне и нужен был. [вопрос № 176463, ответ № 259202]

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

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

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

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

Лысков Игорь Витальевич
Статус: Старший модератор
Рейтинг: 229
Коцюрбенко Алексей aka Жерар
Статус: Мастер-Эксперт
Рейтинг: 134
mklokov
Статус: 6-й класс
Рейтинг: 130

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

Консультация онлайн # 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.13171 сек.

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