Премини към съдържанието
15 години Kaldata.com – време е да почерпим! Прочети още... ×
Spl1nter

Помощ за 2 програми на Visual Studio 2008

Препоръчан отговор


Здравейте! Имам малък проблем и реших да се обърна към вас.Дадоха ми в този петък като домашна работа 2 програми,на първи поглед лесни,но всъщност не можах да направя нищо.Направих въпросните програми линейни,но учителя ми ги върна... Дали са ни безумно малко време(тоя петък ни ги дадоха,а са за тоя понеделник),за неща,които не разбираме съвсем.Моля ви,ако някой може да помогне :)

 

Програмите са следните : (като първата има и подточка Б - да се направи втори вариант,в който входните данни се взимат от файл)

 

1.   post-182362-0-83659300-1387037325_thumb.

 

2.   post-182362-0-08426100-1387037438_thumb.

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

...

Здравейте, 
 
Гледайки условията по задачите, изникват няколко въпроса:
а) е-то, което е дадено параметър, който се въвежда от клавиатурата ли е, или е Неперовото число (e = 2,718281828459)
б) Ако в а) имаме Неперовото число, аз лично не виждам какво имаме за въвеждане като променлива:
 ета (η) се определя от Tr. От своя страна Tr "се изменя в диапазона -1 до 5 със стъпка 0.2", като това също задава 
 стойностите на Tr. И накрая delta се определя директно по формулата. Ако пък e е променлива, то метода за въвеждането ѝ ще е нещо от типа:
 
Забележка: Това е не е решение на задачата, а псевдокод - това не се очаква да се компилира, камо ли да даде правилни резултати. Това е просто идеята, разписана като алгоритъм - не като код !

void въведиДанните() {	cout << "Въведи е: " // printf("Въведи нещо");	cin >> е;            //scanf("%СИМВОЛ_ЗА_ПРЕДСТАВЯНЕ_НА_ТИПА_НА_E", &e); 	... }  void изчетиДанните(имеНаФайл) {	ifstream поток = ifstream(имеНаФайл, std::ifstream::in) //FILE* file = fopen("ИМЕ_НА_ФАИЛ.txt", "r") 	//Добре е да се валидира, дали ще има валидна референция към файл, след предната операция ...	ifstream >> е //fscanf(file, "%%СИМВОЛ_ЗА_ПРЕДСТАВЯНЕ_НА_ТИПА_НА_E", &e)	... }  Самото изчисление ще е има псевдокод, подобен на следния: ТИП_Е е; // е = 2.718, ако е Неперовото число (с приближение) int main () {	въведиДанните() или изчетиДанните();//Ако 'е' е параметър	ета = 0;	Tr = -1;	делта = 0;	докато Tr <= 5:		ако Tr >= 0.6 и Tr <= 1.0			то	ета = 0.82			иначе   ета = 0.63		делта = ета * pow(е,6.6)*(0.7 - Tr)		принтирай делта, ета, Tr		Tr = Tr + 0.2	край	}
 
 
За втората задача дори не знам как да направя псевдокод, който да не е директно решение :D. Затова директно я разписах:
 

#include <iostream>using namespace std;int main () {	double x[5];	int m[5],n[5];	for (int i = 0; i < 5; i++) {		cout << "Enter two integers: ";		cin >> m[i];		do {			cin >> n[i];			if (!n[i]) {				cout << "Enter valid divider: ";			}		} while (!n[i]);		x[i] = ((double)m[i])/n[i];	}	for (int i = 0; i < 5; i++) {		cout << m[i] << "/" << n[i] << " = " << x[i] << endl;	}	system("pause");}
Редактирано от soundtracker (преглед на промените)
  • Харесва ми 1

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.