Начала изучать С довольно недавно и, к сожалению, еще плоховато разбираюсь в этом языке программирования. Сегодня получила задание от препода написать задачку на Паскале и на С. С Паскалем у меня проблем нет, а вот с С потруднее Ничего не получается Помогите, пожалуйста доделать задачку в С.
Вот задача, написанная на Паскале:
RGZ1.PAS ( 301 байт )
Кол-во скачиваний: 588
А вот попытки перевести ее в С:
#include <conio.h>
#include <stdio.h>
#include <iostream.h>
void main()
{
float h,m,z;
cout <<"Введите точное время (часы, минуты, секунды)"<<endl;
cin >>h>>m>>z;
if ((h<=23) || (m<=59) || (z<=59))
{if (z>30) m=m+1;
{if (m=60)
{h=h+1; m=0;}
if (h=24) h=0;}}}
cout <<h<<" часов "<<m<<" минут "<<endl;}
}
Переписать то можно, а смысл ?
until (h<=23) and (m<=59) and (s<=59);
if s>30 then
m:=m+1;
if m=60 then begin // <-- это условие никогда не выполнится
Ты для начала объясни что програма должна делать ....
ps тут с тегами проблема.
lapp, да, ты прав, я извиняюсь.
Тогда держи )
# include <iostream.h>
int main (void){
int h, m, s;
do{
system("cls");
cout << "H = "; cin >> h;
cout << "M = "; cin >> m;
cout << "S = "; cin >> s;
} while ((h >= 24) || (m >= 60) || (s >= 60));
if (s > 30) m++; // вот тут не надо еще и секунды занулять ?
if (m == 60){
h++;
m = 0;
if (h == 24) h = 0;
};
cout << h << " hrs " << m << " mts " << s << " sec." << endl;
return 0;
}
Большое вам спасибо! Очень помогли!