Sort by

recency

|

950 Discussions

|

  • + 0 comments
    def timeInWords(h, m):
        dict1={1:'one',2:'two',3:'three',4:'four',5:'five',6:'six',7:'seven',8:'eight',9:'nine',10:'ten',11:'eleven',12:'twelve', 13: 'thirteen', 14: 'fourteen', \
                15: 'quarter', 16: 'sixteen', 17: 'seventeen', 18: 'eighteen', 19: 'nineteen',20:'twenty',21:'twenty one',22:'twenty two',23:'twenty three', 24:'twenty four',25:'twenty five',26:'twenty six', 27:'twenty seven', 28:'twenty eight', 29:'twenty nine',30:'half'}
        st=' past '
        if(m>30):
            h=h+1
            m=60-m
            st=' to '
        if(m==1):
            return dict1[m]+" minute"+st+dict1[h]
        if(m==00):
            return dict1[h]+" o' clock"
        elif(m!=15 and 1<m<30):
            return dict1[m]+" minutes"+st+dict1[h]
        elif(m==30 or m==15):
            return dict1[m]+st+dict1[h]
    
  • + 0 comments
        words = {
            1: "one", 2: "two", 3: "three", 4: "four", 5: "five", 6: "six", 7: "seven", 8: "eight", 9: "nine", 
            10: "ten", 11: "eleven", 12: "twelve", 13: "thirteen", 14: "fourteen", 15: "fifteen", 
            16: "sixteen", 17: "seventeen", 18: "eighteen", 19: "nineteen", 20: "twenty",
            21: "twenty one", 22: "twenty two", 23: "twenty three", 24: "twenty four", 25: "twenty five",
            26: "twenty six", 27: "twenty seven", 28: "twenty eight", 29: "twenty nine"
        }
        
        if m == 0:
            return f"{words[h]} o' clock"
        elif m == 30:
            return f"half past {words[h]}"
        elif m < 30:
            if m == 15:
                return f"quarter past {words[h]}"
            elif m == 1:
                return f"one minute past {words[h]}"
            else:
                return f"{words[m]} minutes past {words[h]}"
        else:
            difference = 60 - m
            if m == 45:
                return f"quarter to {words[(h % 12) + 1]}"
            elif difference == 1:
                return f"one minute to {words[(h % 12) + 1]}"
            else:
                return f"{words[difference]} minutes to {words[(h % 12) + 1]}"
    
  • + 0 comments

    Here is my Python solution!

    def timeInWords(h, m):
        word = ["one", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen", "twenty", "twenty one", "twenty two", "twenty three", "twenty four", "twenty five", "twenty six", "twenty seven", "twenty eight", "twenty nine"]
        if m == 0:
            return word[h] + " o' clock"
        elif m == 15:
            return "quarter past " + word[h]
        elif m == 30:
            return "half past " + word[h]
        elif m == 45:
            return "quarter to " + word[(h + 1) % 12]
        elif m == 1:
            return "one minute past " + word[h]
        elif m == 59:
            return "one minute to " + word[(h + 1) % 12]
        elif m < 30:
            return word[m] + " minutes past " + word[h]
        else:
            return word[60 - m] + " minutes to " + word[(h + 1) % 12]
    
  • + 0 comments

    Java

    public static String timeInWords(int h, int m) {
        // Write your code here
        
        String time[] = { " o' clock", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten",
                "eleven", "twelve", "thirteen", "fourteen", "quarter", "sixteen", "seventeen", "eighteen", "nineteen", "twenty",
                "twenty one", "twenty two", "twenty three", "twenty four", "twenty five", "twenty six", "twenty seven", "twenty eight", "twenty nine", "half"};
                
        String timeInWord = "";
        
        if (m==0) {
            timeInWord=time[h]+time[0];
        }else if (m==30 || m%30==15) {
            timeInWord=(m>30)?time[60-m]:time[m];
            timeInWord+=(m>30)?" to ":" past ";
            timeInWord+=(m>30)?time[h+1]:time[h];
        } else {
            timeInWord=(m>30)?time[60-m]:time[m];
            timeInWord+=(m==1)?" minute":" minutes";
            timeInWord+=(m>30)?" to ":" past ";
            timeInWord+=(m>30)?time[h+1]:time[h];
        }
              return timeInWord;  
        }
    
  • + 0 comments

    Perl:

    sub timeInWords {
        my ($hour, $minute) = @_;
        
        my @numbers = qw(zero one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen);
        my @tens = qw(twenty thirty forty fifty);
        
        return "$numbers[$hour] o' clock" if $minute == 0;
        return "quarter past $numbers[$hour]" if $minute == 15;
        return "half past $numbers[$hour]" if $minute == 30;
        return "quarter to $numbers[($hour + 1) % 12]" if $minute == 45;
    
        my $word_min;
        my $next_hour = ($hour % 12) + 1;
        if ($minute > 30) {
            my $remaining_minutes = 60 - $minute;
            $word_min = ($remaining_minutes < 20) 
                ? $numbers[$remaining_minutes] 
                : $tens[int($remaining_minutes / 10) - 2] . 
                  ($remaining_minutes % 10 ? " " . $numbers[$remaining_minutes % 10] : "");
            
            return $remaining_minutes == 1 
                ? "one minute to $numbers[$next_hour]" 
                : "$word_min minutes to $numbers[$next_hour]";
        } else {
            $word_min = ($minute < 20) 
                ? $numbers[$minute] 
                : $tens[int($minute / 10) - 2] . 
                  ($minute % 10 ? " " . $numbers[$minute % 10] : "");
    
            return $minute == 1 
                ? "one minute past $numbers[$hour]" 
                : "$word_min minutes past $numbers[$hour]";
        }
    }