C++ Getline(Cin, Name); Yardım
-
Movie Name: …………………………………………… Devrim Arabalari
Number of Tickets Sold: ……………………………….350
Gross Amount: ………………………………………….YTL 5000.00
Percentage of Gross Amount Donated :………………… % 10.00
Amount Donated: ……………………………………….YTL 500.00
Net Sale Amount: …………………………………… … YTL 4500.00arkadaslar elimde böle bir konsol çıktısı olması gerekiyor.
bu şekilde bir giriş yaptım ancak konsolda moviname i girdikten sonra filmin ismini yazmak istedigimde (devrim arabaları) direk konsol kapanıyor. kısaca yukardaki gibi bir çıktı elde etmek istiyorum ama getline(); kullanarak bunu yapamadım. getline setw ve setfill kodlarını kullanarak yukardaki konsol çıktısını nasıl elde ederim yardımlarınızı bekliyorum.
deneme 1 :
#include <iostream>
#include <iomanip>
#include <string>
#include <conio.h>
using namespace std;
const double percent=0.1;
int main()
{
cout<<"_*_*_*_*_*_*_*_*_*_*_*_*"<<endl;
string movieName;
getline(cin, movieName);
cout<<"movie name..........................."<<right<<movieName;getch();
return 0;
}deneme 2 :
string moviename;
getline(cin, moviename);
cout<<"Movie Name : "<<setw(20)<<setfill('.')<<moviename;
int numberticket;
getline(cin, numberticket);
cout<<"Number of Tickets Sold : "<<setw(20)<<setfill('.')<<numberticket;
getch();
return 0;her ikiside başarısız oldu hata veriyor sürekli..
-
getline setw ve setfill kodlarını kullanarak yukardaki konsol çıktısını nasıl elde ederim yardımlarınızı bekliyorum.
Çıktı almak için getline mı kullanıyorsun? Hatan orda bence. O üçü ile biraz zor olur gibi geliyor.
-
valla hocanın işleri bu hali gene en basite indirgenmiş hali diyebilirim.başlabgıçta daha karısıktı. şimdi böle çözebiliriz diye düşünüyorum
-
char movieName [30];
cout << "Enter movie name : ";
gets(movieName);
cout<<"Movie name : "<<setw(20)<<setfill('.')<<movieName<<endl;Böyle dene istersen bir de.
-
olmadı hocam konsolun tam cıktısını elde edemiyorum.
-
Konsolun tam çıktısı nedir anlamadım. Kod derlenmiyor mu yoksa istediğin sonucu vermiyor mu? Derdini düzgün anlatırsan çözüm bulunur belki.
-
Movie Name: …………………………………………… Devrim Arabalari // konsol acıldıgında ismi giricem
Number of Tickets Sold: ……………………………….350 // konsolda bilet numarasını giricem
Gross Amount: ………………………………………….YTL 5000.00 // verilenen net para (buraya bir fiyat giricem)
Percentage of Gross Amount Donated :………………… % 10.00 // konsolda net paranın bağışlanan yüzdesini yazıcam (burada yüzdeyi belirlicem)
Amount Donated: ……………………………………….YTL 500.00 // bağışlanan net miktar(yüzdeyi girdikten sonra hesaplama yapılıp 500 ü kendi cıkarıcak)
Net Sale Amount: …………………………………… … YTL 4500.00 // ve net fiyat gösterilicek (yukardaki yüzde hesaplamasından sonra net fiyat cıkıcak)bu olmasa bile
yukardaki konsol cıktısının aynısını hesaplama yapmadan sadece setw setfill getline kullanarak elde etsekde olur.
-
------------
yukardaki konsol cıktısının aynısını hesaplama yapmadan sadece setw setfill getline kullanarak elde etsekde olur.
-----------
setw (n) -> n karakter boşluk bırakır
setfill ('.') -> herhalde . ile dolduruyordur oraları
getline -> string okumak için kullanlır.
Dediğin işlem için en azından bir cout ya da puts falan kullanman lazım. Sadece setw setfill getline kullanarak olmaz. Peki nasıl olacak dersen :
string movieName;
getline(cin, movieName);
getline kullanarak filmin ismini alacaksın. Daha sonra istediğin hesaplamaları yapıp istediğin çıktıyı, cout, printf ya da puts kullanarak oluşturacaksın. cout işini görür bence.
-
Deneme 2 üzerinde şöyle bir düzenleme yapmalısın
#include <iostream>
#include <string>
#include <iomanip>
using namespace std;
const double percent=0.1;
int main(void)
{
string movieName;
getline(cin, movieName);
cout<<"Movie Name : "<<setw(20)<<setfill('.')<<movieName<< endl;
int numberTicket;
string tempStr; //Bunun yerine movieName i de kullanabilirsin.
getline(cin, tempStr);
numberTicket = atoi(tempStr.c_str()); //Aldığın degeri integer a atayacaksan dönüşüm yapmalısın.
cout<<"Number of Tickets Sold : "<<setw(20)<<setfill('.')<<numberTicket <<endl;
return 0;
}Devamını halledersin herhalde...
-
#include <iostream>
#include <conio.h> //getch();
#include <iomanip> // setw
using namespace std;
int main(){
string movieName;
int notSold, grossAmount;
double percentADonated, nsAmount;
cout << "Movie Name:" << setfill ('.') << setw(30) << " ";
getline (cin, movieName);
cout << "Number of Tickets Sold:" << setw(18) << " ";
cin >> notSold;
cout << "Gross Amount:" << setw(32) << " YTL ";
cin >> grossAmount;
cout << "Percentage of Gross Amount Donated:" << setw(8) << " % ";
cin >> percentADonated;
nsAmount = grossAmount*percentADonated /100;
cout << "Amount Donated:" << setw(26) << " " << nsAmount ;
cout << "\nNet Sale Amount:" << setw(25) << " " << grossAmount - nsAmount
<< endl;
getch();
return 0;
} -
arkadaslar cok tesekkür ediyorum noktayı koymussunuz rahatladım valla....