Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.10.2018, 17:00   #1
Evgeny_L
Пользователь
 
Регистрация: 27.10.2018
Сообщений: 31
По умолчанию некорректная работа программы

Не работает if else в среднем количестве осадков

Код:
#include "pch.h"
#include <string>
#include <iostream>
#include <cstdlib> 

using namespace std;

struct pogoda
{
	string mestnost;
	int data;
	int kol;
	int intens;
	char skorost[100];
	string napravl;
	int temp;
	char den[20];
	char night[20];
} s[100];
int add(int n)
{
	cout << "mestnost: " << endl;
	cin >> s[n].mestnost;
	cout << "data: " << endl;
	cin >> s[n].data;
	cout << "osadki \n" << endl;
	cout << "kol: ";
	cin >> s[n].kol;
	cout << " intensiv: " << endl;
	cin >> s[n].intens;
	cout << "veter \n";
	cout << "skorost: " << endl;
	cin >> s[n].skorost;
	cout << "napravl: " << endl;
	cin >> s[n].napravl;
	cout << " sr_ temperatyra \n" << endl;
	cin >> s[n].temp;
	cout << "den " << endl;
	cin >> s[n].den;
	cout << "night " << endl;
	cin >> s[n].night;
	return ++n;
}
void Out(int n)
{
	cout << "INFORM O BAZE: " << endl;
	for (int i = 0; i < n; i++)
	{
		cout << "mestnost: " << s[i].mestnost << endl;
		cout << "data:" << s[i].data << endl;
		cout << "\n";
		cout << "osadki \n" << endl;
		cout << "kol: " << s[i].kol << endl;
		cout << "intens " << s[i].intens << endl;
		cout << "veter \n" << endl;
		cout << "skorost: " << s[i].skorost << endl;
		cout << "napravl: " << s[i].napravl << endl;
		cout << "\n";
		cout << "sr_temperatyra: " << s[i].temp << endl;
		cout << "den " << s[i].den << endl;
		cout << "night " << s[i].night << endl;
	}

}
int t(int n) // температура где +10 гр
{

	int dat = 0;

	cout << " vvod dati ";
	cin >> dat;
	for (int i = 0; i < n; i++)
	{
		cout << "vivod inform \n" << endl;
		if (s[i].data == dat && s[i].temp == 10)
		{
			cout << "mestnost: " << s[i].mestnost << endl;
		}
		else
			cout << "v etot den' ne bilo temperaturi 10 " << endl;
	}
	return ++n;
}
int sred(int n) //среднее количество осадков  //не работает
{
    double osad;
	string mest;
	int dni;
	cout << "vvod mestnosti\n" << endl;
	cin >> mest;
	cout << "vvod dni " << endl;
	cin >> dni;
	for (int i = 1; i < n; i++)
	{
		osad = s[i].kol / dni;
		if (s[i].kol == osad)
		{
			cout << "sred osad " <<osad<< endl;
		}
		else

			cout << "error; net takoi mestonsti !" << endl;

	}
	return ++n;
}
int napravlenie(int n)  // направление ветра в заданой местности и за заданую дату
{
	return ++n;
}
int main()
{
	int i = 0, a, n = 0;
	cout << "menu" << endl;
	while (1)
	{
		cout << "1 - vvod;" << endl <<
			"2 - all baza" << endl <<
			"3 - mestonst gde 10" << endl <<
			"4 -sr kol-vo ocadkov" << endl;
		cin >> a;
		switch (a)
		{
		case 1:
		{
			system("cls");
			n = add(n);
			system("cls");
			break;
		}
		case 2:
		{
			Out(n);
			break;
		}
		case 3:
		{	n = t(n);
		break;
		}
		case 4:
		{ n = sred(n);
		break;
		}
		case 5:
		{
			n = napravlenie(n);
			break;
		}
		}
	}
}
_____
Код программы нужно выделять (форматировать) тегами [CODE] [/CODE] (читать FAQ)
Модератор

Последний раз редактировалось Serge_Bliznykov; 28.10.2018 в 19:01.
Evgeny_L вне форума Ответить с цитированием
Старый 28.10.2018, 18:32   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Код:
osad = s[i].kol / dni;
if (s[i].kol == osad)
Как не работает? Что вы этим ифом хотели добиться? Вы осознаете, что сработает он в одном единственном случае?
p51x вне форума Ответить с цитированием
Старый 28.10.2018, 19:25   #3
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,550
По умолчанию

... когда dni == 1
digitalis вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Некорректная работа программы AB96 Общие вопросы C/C++ 2 25.12.2015 14:06
Некорректная работа программы Starget-93 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 18.11.2012 06:08
Некорректная работа программы в Windows 7. Vedaslav Общие вопросы Delphi 19 02.08.2011 00:03
Некорректная работа программы... HyperZen Общие вопросы Delphi 2 03.07.2011 10:46
Некорректная работа программы при формировании массива @Manya@ Общие вопросы C/C++ 13 22.04.2010 21:40