public class SKPCinema {
// Movie currently playing
public String currentMovie = 'OG';
// Welcome message method
public void showWelcomeMessage() {
System.debug('Welcome to SKP Cinemas');
}
// Method to get the current movie
public String getCurrentMovie() {
return currentMovie;
}
// Method to calculate total cost
public Integer calculateTotalCost(Integer numberOfTickets, Integer costPerTicket) {
return numberOfTickets * costPerTicket;
}
// Method to print single ticket confirmation
public void printSingleTicket(String movieName, String row, Integer seatNo) {
System.debug('Ticket confirmed for "' + movieName + ' Movie" at ' + row + ' Row seat No. ' + seatNo + '.');
}
// Method to print multiple ticket confirmation (Smart people kosam 😎)
public void printMultipleTickets(String movieName, String row, Integer startSeatNo, Integer numberOfTickets) {
List<String> seatList = new List<String>();
for (Integer i = 0; i < numberOfTickets; i++) {
seatList.add(row + String.valueOf(startSeatNo + i));
}
System.debug('Ticket confirmed for "' + movieName + ' Movie" at Seat Number ' + String.join(seatList, ', '));
}
}
cHVibGljIGNsYXNzIFNLUENpbmVtYSB7CgogICAgLy8gTW92aWUgY3VycmVudGx5IHBsYXlpbmcKICAgIHB1YmxpYyBTdHJpbmcgY3VycmVudE1vdmllID0gJ09HJzsKICAgIAogICAgLy8gV2VsY29tZSBtZXNzYWdlIG1ldGhvZAogICAgcHVibGljIHZvaWQgc2hvd1dlbGNvbWVNZXNzYWdlKCkgewogICAgICAgIFN5c3RlbS5kZWJ1ZygnV2VsY29tZSB0byBTS1AgQ2luZW1hcycpOwogICAgfQogICAgCiAgICAvLyBNZXRob2QgdG8gZ2V0IHRoZSBjdXJyZW50IG1vdmllCiAgICBwdWJsaWMgU3RyaW5nIGdldEN1cnJlbnRNb3ZpZSgpIHsKICAgICAgICByZXR1cm4gY3VycmVudE1vdmllOwogICAgfQogICAgCiAgICAvLyBNZXRob2QgdG8gY2FsY3VsYXRlIHRvdGFsIGNvc3QKICAgIHB1YmxpYyBJbnRlZ2VyIGNhbGN1bGF0ZVRvdGFsQ29zdChJbnRlZ2VyIG51bWJlck9mVGlja2V0cywgSW50ZWdlciBjb3N0UGVyVGlja2V0KSB7CiAgICAgICAgcmV0dXJuIG51bWJlck9mVGlja2V0cyAqIGNvc3RQZXJUaWNrZXQ7CiAgICB9CiAgICAKICAgIC8vIE1ldGhvZCB0byBwcmludCBzaW5nbGUgdGlja2V0IGNvbmZpcm1hdGlvbgogICAgcHVibGljIHZvaWQgcHJpbnRTaW5nbGVUaWNrZXQoU3RyaW5nIG1vdmllTmFtZSwgU3RyaW5nIHJvdywgSW50ZWdlciBzZWF0Tm8pIHsKICAgICAgICBTeXN0ZW0uZGVidWcoJ1RpY2tldCBjb25maXJtZWQgZm9yICInICsgbW92aWVOYW1lICsgJyBNb3ZpZSIgYXQgJyArIHJvdyArICcgUm93IHNlYXQgTm8uICcgKyBzZWF0Tm8gKyAnLicpOwogICAgfQogICAgCiAgICAvLyBNZXRob2QgdG8gcHJpbnQgbXVsdGlwbGUgdGlja2V0IGNvbmZpcm1hdGlvbiAoU21hcnQgcGVvcGxlIGtvc2FtIPCfmI4pCiAgICBwdWJsaWMgdm9pZCBwcmludE11bHRpcGxlVGlja2V0cyhTdHJpbmcgbW92aWVOYW1lLCBTdHJpbmcgcm93LCBJbnRlZ2VyIHN0YXJ0U2VhdE5vLCBJbnRlZ2VyIG51bWJlck9mVGlja2V0cykgewogICAgICAgIExpc3Q8U3RyaW5nPiBzZWF0TGlzdCA9IG5ldyBMaXN0PFN0cmluZz4oKTsKICAgICAgICBmb3IgKEludGVnZXIgaSA9IDA7IGkgPCBudW1iZXJPZlRpY2tldHM7IGkrKykgewogICAgICAgICAgICBzZWF0TGlzdC5hZGQocm93ICsgU3RyaW5nLnZhbHVlT2Yoc3RhcnRTZWF0Tm8gKyBpKSk7CiAgICAgICAgfQogICAgICAgIFN5c3RlbS5kZWJ1ZygnVGlja2V0IGNvbmZpcm1lZCBmb3IgIicgKyBtb3ZpZU5hbWUgKyAnIE1vdmllIiBhdCBTZWF0IE51bWJlciAnICsgU3RyaW5nLmpvaW4oc2VhdExpc3QsICcsICcpKTsKICAgIH0KfQ==